aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorAkinobu Mita <akinobu.mita@gmail.com>2007-02-05 16:21:09 -0800
committerRoland Dreier <rolandd@cisco.com>2007-02-10 08:00:49 -0800
commit65e5c0262169a92bdec71a8bb9edb32dab2d8d1f (patch)
tree7ff3343c22ada7fcf71c2ae6e20c33180bec110e /drivers
parentIB/mthca: Work around gcc bug on sparc64 (diff)
downloadlinux-dev-65e5c0262169a92bdec71a8bb9edb32dab2d8d1f.tar.xz
linux-dev-65e5c0262169a92bdec71a8bb9edb32dab2d8d1f.zip
IB/ehca: Fix memleak on module unloading
Percpu data is not freed on module unloading. Cc: Heiko Carstens <heiko.carstens@de.ibm.com> Cc: Christoph Raisch <raisch@de.ibm.com> Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Acked-by: Hoang-Nam Nguyen <hnguyen@de.ibm.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/infiniband/hw/ehca/ehca_irq.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/ehca/ehca_irq.c b/drivers/infiniband/hw/ehca/ehca_irq.c
index c069be8cbcb2..6c4f9f91b15d 100644
--- a/drivers/infiniband/hw/ehca/ehca_irq.c
+++ b/drivers/infiniband/hw/ehca/ehca_irq.c
@@ -756,6 +756,8 @@ void ehca_destroy_comp_pool(void)
if (cpu_online(i))
destroy_comp_task(pool, i);
}
+ free_percpu(pool->cpu_comp_tasks);
+ kfree(pool);
#endif
return;