From: Linus Torvalds Date: Thu, 19 Jul 2007 20:21:34 +0000 (-0700) Subject: slub: fix ksize() for zero-sized pointers X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=9550b105b8646f916862aee3ab7b25020ca14159;p=openwrt%2Fstaging%2Fblogic.git 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 Cc: Christoph Lameter Cc: Andrew Morton Signed-off-by: Linus Torvalds --- 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);