> That is the issue. It should fall back to kmalloc. One piece of the > patchset dropped out between Andrew and Linus.
That helped, but I still had lots of free memory in the request_queue slab. Giving kmem_cache_alloc_node the same treatment fixed it, although I wonder if we just shouldnt be passing in -1. Anton Index: foobar2/mm/slab.c =================================================================== --- foobar2.orig/mm/slab.c 2005-07-06 10:47:47.950435997 +1000 +++ foobar2/mm/slab.c 2005-07-06 10:59:59.945684235 +1000 @@ -2372,6 +2372,9 @@ struct slab *slabp; kmem_bufctl_t next; + if (nodeid == -1) + return kmem_cache_alloc(cachep, flags); + for (loop = 0;;loop++) { struct list_head *q; @@ -2443,6 +2446,9 @@ { kmem_cache_t *cachep; + if (node == -1) + return kmalloc(size, flags); + cachep = kmem_find_general_cachep(size, flags); if (unlikely(cachep == NULL)) return NULL; - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/