Index: linux-2.6.21-rc2/mm/slub.c =================================================================== --- linux-2.6.21-rc2.orig/mm/slub.c 2007-02-28 17:57:37.000000000 -0800 +++ linux-2.6.21-rc2/mm/slub.c 2007-02-28 17:59:05.000000000 -0800 @@ -829,7 +829,7 @@ out: /* * Get a page from somewhere. Search in increasing NUMA - * distance. + * distances. */ static struct page *get_any_partial(struct kmem_cache *s, gfp_t flags) { @@ -845,7 +845,7 @@ static struct page *get_any_partial(stru n = get_node(s, zone_to_nid(*z)); if (n && cpuset_zone_allowed_hardwall(*z, flags) && - n->nr_partial) { + n->nr_partial > 2) { page = get_partial_node(n); if (page) return page;