Commit ce80b067 authored by Catalin Marinas's avatar Catalin Marinas Committed by Linus Torvalds

lib/radix-tree.c: update the kmemleak stack trace for radix tree allocations

Since radix_tree_preload() stack trace is not always useful for
debugging an actual radix tree memory leak, this patch updates the
kmemleak allocation stack trace in the radix_tree_node_alloc() function.
Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
Acked-by: default avatarJohannes Weiner <hannes@cmpxchg.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent ffe2c748
...@@ -27,6 +27,7 @@ ...@@ -27,6 +27,7 @@
#include <linux/radix-tree.h> #include <linux/radix-tree.h>
#include <linux/percpu.h> #include <linux/percpu.h>
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/kmemleak.h>
#include <linux/notifier.h> #include <linux/notifier.h>
#include <linux/cpu.h> #include <linux/cpu.h>
#include <linux/string.h> #include <linux/string.h>
...@@ -200,6 +201,11 @@ radix_tree_node_alloc(struct radix_tree_root *root) ...@@ -200,6 +201,11 @@ radix_tree_node_alloc(struct radix_tree_root *root)
rtp->nodes[rtp->nr - 1] = NULL; rtp->nodes[rtp->nr - 1] = NULL;
rtp->nr--; rtp->nr--;
} }
/*
* Update the allocation stack trace as this is more useful
* for debugging.
*/
kmemleak_update_trace(ret);
} }
if (ret == NULL) if (ret == NULL)
ret = kmem_cache_alloc(radix_tree_node_cachep, gfp_mask); ret = kmem_cache_alloc(radix_tree_node_cachep, gfp_mask);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment