summaryrefslogtreecommitdiffstats
path: root/mm/slub.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-19 13:21:34 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-19 13:21:34 -0700
commit9550b105b8646f916862aee3ab7b25020ca14159 (patch)
treed5e57db2bfd773611e2b77b4bbe6d89ba8449b45 /mm/slub.c
parenta5c96d8a1c67f31ef48935a78da2d2076513842b (diff)
downloadlinux-stable-9550b105b8646f916862aee3ab7b25020ca14159.tar.gz
linux-stable-9550b105b8646f916862aee3ab7b25020ca14159.tar.bz2
linux-stable-9550b105b8646f916862aee3ab7b25020ca14159.zip
slub: fix ksize() for zero-sized pointers
The slab and slob allocators already did this right, but slub would call "get_object_page()" on the magic ZERO_SIZE_PTR, with all kinds of nasty end results. Noted by Ingo Molnar. Cc: Ingo Molnar <mingo@elte.hu> Cc: Christoph Lameter <clameter@sgi.com> Cc: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/slub.c')
-rw-r--r--mm/slub.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/mm/slub.c b/mm/slub.c
index 52a4f44be394..322f3a5d72c7 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -2394,7 +2394,7 @@ size_t ksize(const void *object)
struct page *page;
struct kmem_cache *s;
- if (object == ZERO_SIZE_PTR)
+ if (ZERO_OR_NULL_PTR(object))
return 0;
page = get_object_page(object);