From da0c467518f70eb74d536b09dc04e60c3155c8ab Mon Sep 17 00:00:00 2001 From: Christian Helmuth Date: Thu, 21 Apr 2016 14:38:35 +0200 Subject: [PATCH] Deallocation in slab backend of ported drivers --- repos/dde_bsd/src/lib/audio/mem.cc | 2 +- repos/dde_ipxe/src/lib/dde_ipxe/dde_support.cc | 2 +- .../include/lx_emul/impl/internal/slab_backend_alloc.h | 2 +- repos/dde_linux/src/lib/lxip/lxcc_emul.cc | 2 +- repos/dde_linux/src/lib/usb/lx_emul.cc | 8 ++------ repos/dde_linux/src/lib/wifi/lxcc_emul.cc | 2 +- 6 files changed, 7 insertions(+), 11 deletions(-) diff --git a/repos/dde_bsd/src/lib/audio/mem.cc b/repos/dde_bsd/src/lib/audio/mem.cc index 7a6383e6fc..29233c8f97 100644 --- a/repos/dde_bsd/src/lib/audio/mem.cc +++ b/repos/dde_bsd/src/lib/audio/mem.cc @@ -114,7 +114,7 @@ class Bsd::Slab_backend_alloc : public Genode::Allocator, return _range.alloc(size, out_addr); } - void free(void *addr, Genode::size_t size) { } + void free(void *addr, Genode::size_t size) { _range.free(addr, size); } Genode::size_t overhead(Genode::size_t size) const { return 0; } bool need_size_for_free() const override { return false; } }; diff --git a/repos/dde_ipxe/src/lib/dde_ipxe/dde_support.cc b/repos/dde_ipxe/src/lib/dde_ipxe/dde_support.cc index 94afd1bc63..9e3a9adf74 100644 --- a/repos/dde_ipxe/src/lib/dde_ipxe/dde_support.cc +++ b/repos/dde_ipxe/src/lib/dde_ipxe/dde_support.cc @@ -497,7 +497,7 @@ struct Slab_backend_alloc : public Genode::Allocator, return _range.alloc(size, out_addr); } - void free(void *addr, Genode::size_t size) { } + void free(void *addr, Genode::size_t size) { _range.free(addr, size); } Genode::size_t overhead(Genode::size_t size) const { return 0; } bool need_size_for_free() const { return false; } }; diff --git a/repos/dde_linux/src/include/lx_emul/impl/internal/slab_backend_alloc.h b/repos/dde_linux/src/include/lx_emul/impl/internal/slab_backend_alloc.h index f0c5450ff3..e36ee91ae3 100644 --- a/repos/dde_linux/src/include/lx_emul/impl/internal/slab_backend_alloc.h +++ b/repos/dde_linux/src/include/lx_emul/impl/internal/slab_backend_alloc.h @@ -106,7 +106,7 @@ class Lx::Slab_backend_alloc : public Genode::Allocator, return _range.alloc(size, out_addr); } - void free(void *addr, size_t /* size */) override { } + void free(void *addr, size_t size) override { _range.free(addr, size); } size_t overhead(size_t size) const override { return 0; } bool need_size_for_free() const override { return false; } diff --git a/repos/dde_linux/src/lib/lxip/lxcc_emul.cc b/repos/dde_linux/src/lib/lxip/lxcc_emul.cc index b5bab2f074..7c0782c3fa 100644 --- a/repos/dde_linux/src/lib/lxip/lxcc_emul.cc +++ b/repos/dde_linux/src/lib/lxip/lxcc_emul.cc @@ -115,7 +115,7 @@ class Genode::Slab_backend_alloc : public Genode::Allocator, return _range.alloc(size, out_addr); } - void free(void *addr, size_t /* size */) override { } + void free(void *addr, size_t size) override { _range.free(addr, size); } size_t overhead(size_t size) const override { return 0; } bool need_size_for_free() const override { return false; } diff --git a/repos/dde_linux/src/lib/usb/lx_emul.cc b/repos/dde_linux/src/lib/usb/lx_emul.cc index d86983ea45..04cf17ebbd 100644 --- a/repos/dde_linux/src/lib/usb/lx_emul.cc +++ b/repos/dde_linux/src/lib/usb/lx_emul.cc @@ -110,12 +110,8 @@ class Genode::Slab_backend_alloc : public Genode::Allocator, return _range.alloc(size, out_addr); } - void free(void *addr) - { - _range.free(addr); - } - - void free(void *addr, size_t /* size */) override { } + void free(void *addr) { _range.free(addr); } + void free(void *addr, size_t size) override { _range.free(addr, size); } size_t overhead(size_t size) const override { return 0; } bool need_size_for_free() const override { return false; } diff --git a/repos/dde_linux/src/lib/wifi/lxcc_emul.cc b/repos/dde_linux/src/lib/wifi/lxcc_emul.cc index bb74bcea4f..79f46c75df 100644 --- a/repos/dde_linux/src/lib/wifi/lxcc_emul.cc +++ b/repos/dde_linux/src/lib/wifi/lxcc_emul.cc @@ -119,7 +119,7 @@ class Lx::Slab_backend_alloc : public Genode::Allocator, return _range.alloc(size, out_addr); } - void free(void *addr, size_t /* size */) override { } + void free(void *addr, size_t size) override { _range.free(addr, size); } size_t overhead(size_t size) const override { return 0; } bool need_size_for_free() const override { return false; }