summaryrefslogtreecommitdiffstats
path: root/mm/slab.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2007-02-10 10:44:57 +0100
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-02-11 19:51:26 +0100
commit898552c9d807fe59f3ecaf9c300c109358375c12 (patch)
tree74b49d1c49a18518f298bc25fc0bb686bd2b2a64 /mm/slab.c
parent[PATCH] kill_pid_info: kill acquired_tasklist_lock (diff)
downloadlinux-898552c9d807fe59f3ecaf9c300c109358375c12.tar.xz
linux-898552c9d807fe59f3ecaf9c300c109358375c12.zip
[PATCH] lockdep: also check for freed locks in kmem_cache_free()
kmem_cache_free() was missing the check for freeing held locks. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to '')
-rw-r--r--mm/slab.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/mm/slab.c b/mm/slab.c
index 348396d691a1..196df70eb8cb 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -3751,6 +3751,7 @@ void kmem_cache_free(struct kmem_cache *cachep, void *objp)
BUG_ON(virt_to_cache(objp) != cachep);
local_irq_save(flags);
+ debug_check_no_locks_freed(objp, obj_size(cachep));
__cache_free(cachep, objp);
local_irq_restore(flags);
}