This is a note to let you know that I've just added the patch titled dm: fix idr leak on module removal
to the 2.6.32-longterm tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/longterm/longterm-queue-2.6.32.git;a=summary The filename of the patch is: dm-fix-idr-leak-on-module-removal.patch and it can be found in the queue-2.6.32 subdirectory. If you, or anyone else, feels it should not be added to the 2.6.32 longterm tree, please let <sta...@kernel.org> know about it. >From d15b774c2920d55e3d58275c97fbe3adc3afde38 Mon Sep 17 00:00:00 2001 From: Alasdair G Kergon <a...@redhat.com> Date: Tue, 2 Aug 2011 12:32:01 +0100 Subject: dm: fix idr leak on module removal From: Alasdair G Kergon <a...@redhat.com> commit d15b774c2920d55e3d58275c97fbe3adc3afde38 upstream. Destroy _minor_idr when unloading the core dm module. (Found by kmemleak.) Signed-off-by: Alasdair G Kergon <a...@redhat.com> Signed-off-by: Greg Kroah-Hartman <gre...@suse.de> --- drivers/md/dm.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) --- a/drivers/md/dm.c +++ b/drivers/md/dm.c @@ -36,6 +36,8 @@ static const char *_name = DM_NAME; static unsigned int major = 0; static unsigned int _major = 0; +static DEFINE_IDR(_minor_idr); + static DEFINE_SPINLOCK(_minor_lock); /* * For bio-based dm. @@ -315,6 +317,12 @@ static void __exit dm_exit(void) while (i--) _exits[i](); + + /* + * Should be empty by this point. + */ + idr_remove_all(&_minor_idr); + idr_destroy(&_minor_idr); } /* @@ -1663,8 +1671,6 @@ static int dm_any_congested(void *conges /*----------------------------------------------------------------- * An IDR is used to keep track of allocated minor numbers. *---------------------------------------------------------------*/ -static DEFINE_IDR(_minor_idr); - static void free_minor(int minor) { spin_lock(&_minor_lock); Patches currently in longterm-queue-2.6.32 which might be from a...@redhat.com are /home/gregkh/linux/longterm/longterm-queue-2.6.32/queue-2.6.32/dm-fix-idr-leak-on-module-removal.patch /home/gregkh/linux/longterm/longterm-queue-2.6.32/queue-2.6.32/dm-mpath-fix-potential-null-pointer-in-feature-arg.patch _______________________________________________ stable mailing list stable@linux.kernel.org http://linux.kernel.org/mailman/listinfo/stable