Index: linux-2.6.21-rc5-mm3/mm/slub.c =================================================================== --- linux-2.6.21-rc5-mm3.orig/mm/slub.c 2007-03-30 21:51:16.000000000 -0700 +++ linux-2.6.21-rc5-mm3/mm/slub.c 2007-03-30 21:51:21.000000000 -0700 @@ -1686,11 +1686,11 @@ EXPORT_SYMBOL(kmem_cache_destroy); * Kmalloc subsystem *******************************************************************/ -struct kmem_cache kmalloc_caches[KMALLOC_SHIFT_HIGH] __cacheline_aligned; +struct kmem_cache kmalloc_caches[KMALLOC_SHIFT_HIGH + 1] __cacheline_aligned; EXPORT_SYMBOL(kmalloc_caches); #ifdef CONFIG_ZONE_DMA -static struct kmem_cache *kmalloc_caches_dma[KMALLOC_SHIFT_HIGH]; +static struct kmem_cache *kmalloc_caches_dma[KMALLOC_SHIFT_HIGH + 1]; #endif static int __init setup_slub_min_order(char *str) @@ -2034,7 +2034,6 @@ static struct kmem_cache *find_mergeable struct kmem_cache *s = container_of(h, struct kmem_cache, list); - BUG_ON(list_empty(&slab_caches)); if (size > s->size) continue;