A large number of objects (anything >= 512 bytes) are escaping redzoning and caller-address treatment in slab debugging. The comment says this is to avoid "severe fragmentation". Well, slab debug is supposed to find bugs, not to be efficient... mm/slab.c | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) diff -puN mm/slab.c~slab_store_user-large-objects mm/slab.c --- 25/mm/slab.c~slab_store_user-large-objects 2003-03-29 16:38:11.000000000 -0800 +++ 25-akpm/mm/slab.c 2003-03-29 16:38:11.000000000 -0800 @@ -908,7 +908,7 @@ kmem_cache_create (const char *name, siz } #if FORCED_DEBUG - if ((size < (PAGE_SIZE>>3)) && !(flags & SLAB_MUST_HWCACHE_ALIGN)) + if (size < PAGE_SIZE && !(flags & SLAB_MUST_HWCACHE_ALIGN)) /* * do not red zone large object, causes severe * fragmentation. _