Index: linux-2.6.21-rc6/mm/slub.c =================================================================== --- linux-2.6.21-rc6.orig/mm/slub.c 2007-04-10 16:18:13.000000000 -0700 +++ linux-2.6.21-rc6/mm/slub.c 2007-04-10 16:25:33.000000000 -0700 @@ -531,6 +531,8 @@ static int check_object(struct kmem_cach static int check_slab(struct kmem_cache *s, struct page *page) { + VM_BUG_ON(!irqs_disabled()); + if (!PageSlab(page)) { printk(KERN_ERR "SLUB: %s Not a valid slab page @0x%p " "flags=%lx mapping=0x%p count=%d \n", @@ -612,6 +614,8 @@ static void add_full(struct kmem_cache * { struct kmem_cache_node *n; + VM_BUG_ON(!irqs_disabled()); + if (!(s->flags & SLAB_STORE_USER)) return; @@ -625,6 +629,8 @@ static void remove_full(struct kmem_cach { struct kmem_cache_node *n; + VM_BUG_ON(!irqs_disabled()); + if (!(s->flags & SLAB_STORE_USER)) return;