Index: linux-2.6.19-rc6-mm1/mm/slab.c =================================================================== --- linux-2.6.19-rc6-mm1.orig/mm/slab.c 2006-11-28 14:08:25.000000000 -0600 +++ linux-2.6.19-rc6-mm1/mm/slab.c 2006-11-28 14:12:13.941691597 -0600 @@ -3256,6 +3256,8 @@ void *fallback_alloc(struct kmem_cache * void *obj = NULL; int nid; + printk(KERN_CRIT "fallback_alloc %p %x\n", cache, flags); + retry: /* * Look through allowed nodes for objects available @@ -3272,6 +3274,7 @@ retry: } if (!obj) { + printk(KERN_CRIT "No object in nodelists\n"); /* * This allocation will be performed within the constraints * of the current cpuset / memory policy requirements. @@ -3284,9 +3287,11 @@ retry: * Insert into the appropriate per node queues */ nid = page_to_nid(virt_to_page(obj)); + printk(KERN_CRIT "Slab allocated from node %d\n", nid); if (cache_grow(cache, flags, nid, obj)) { obj = ____cache_alloc_node(cache, flags | GFP_THISNODE, nid); + printk(KERN_CRIT "Allocated object %p from __cache_alloc_node\n", obj); if (!obj) /* * Another processor may allocate the @@ -3295,6 +3300,7 @@ retry: */ goto retry; } else { + printk(KERN_CRIT "Failed to grow cache\n"); kmem_freepages(cache, obj); obj = NULL; }