slab: fix to calm down kmemleak warning
authorJoonsoo Kim <iamjoonsoo.kim@lge.com>
Wed, 30 Oct 2013 10:04:00 +0000 (19:04 +0900)
committerPekka Enberg <penberg@iki.fi>
Wed, 30 Oct 2013 12:08:52 +0000 (14:08 +0200)
After using struct page as slab management, we should not call
kmemleak_scan_area(), since struct page isn't the tracking object of
kmemleak. Without this patch and if CONFIG_DEBUG_KMEMLEAK is enabled,
so many kmemleak warnings are printed.

Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Signed-off-by: Pekka Enberg <penberg@iki.fi>
mm/slab.c

index af2db76..a8a9349 100644 (file)
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -2531,14 +2531,6 @@ static struct freelist *alloc_slabmgmt(struct kmem_cache *cachep,
                /* Slab management obj is off-slab. */
                freelist = kmem_cache_alloc_node(cachep->freelist_cache,
                                              local_flags, nodeid);
-               /*
-                * If the first object in the slab is leaked (it's allocated
-                * but no one has a reference to it), we want to make sure
-                * kmemleak does not treat the ->s_mem pointer as a reference
-                * to the object. Otherwise we will not report the leak.
-                */
-               kmemleak_scan_area(&page->lru, sizeof(struct list_head),
-                                  local_flags);
                if (!freelist)
                        return NULL;
        } else {