The patch titled Subject: mm-slub-improve-performance-by-skipping-checked-node-in-get_any_partial-fix has been added to the -mm tree. Its filename is mm-slub-improve-performance-by-skipping-checked-node-in-get_any_partial-fix.patch This patch should soon appear at http://ozlabs.org/~akpm/mmots/broken-out/mm-slub-improve-performance-by-skipping-checked-node-in-get_any_partial-fix.patch and later at http://ozlabs.org/~akpm/mmotm/broken-out/mm-slub-improve-performance-by-skipping-checked-node-in-get_any_partial-fix.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Subject: mm-slub-improve-performance-by-skipping-checked-node-in-get_any_partial-fix rename variable, tweak comment Cc: Christoph Lameter <cl@xxxxxxxxx> Cc: David Rientjes <rientjes@xxxxxxxxxx> Cc: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx> Cc: Pekka Enberg <penberg@xxxxxxxxxx> Cc: Wei Yang <richard.weiyang@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- --- a/mm/slub.c~mm-slub-improve-performance-by-skipping-checked-node-in-get_any_partial-fix +++ a/mm/slub.c @@ -1873,7 +1873,7 @@ static void *get_partial_node(struct kme * Get a page from somewhere. Search in increasing NUMA distances. */ static void *get_any_partial(struct kmem_cache *s, gfp_t flags, - struct kmem_cache_cpu *c, int except) + struct kmem_cache_cpu *c, int exclude_nid) { #ifdef CONFIG_NUMA struct zonelist *zonelist; @@ -1911,7 +1911,7 @@ static void *get_any_partial(struct kmem for_each_zone_zonelist(zone, z, zonelist, high_zoneidx) { struct kmem_cache_node *n; - if (except == zone_to_nid(zone)) + if (exclude_nid == zone_to_nid(zone)) continue; n = get_node(s, zone_to_nid(zone)); @@ -1931,12 +1931,13 @@ static void *get_any_partial(struct kmem } } /* - * Fail to get object from this node, either because - * 1. Fails in if check - * 2. NULl object returns from get_partial_node() - * Skip it next time. + * Failed to get an object from this node, either + * because + * 1. Failure in the above if check + * 2. NULL return from get_partial_node() + * So skip this node next time. */ - except = zone_to_nid(zone); + exclude_nid = zone_to_nid(zone); } } while (read_mems_allowed_retry(cpuset_mems_cookie)); #endif _ Patches currently in -mm which might be from akpm@xxxxxxxxxxxxxxxxxxxx are mm-cleancache-fix-corruption-on-missed-inode-invalidation-fix.patch arm-arch-arm-include-asm-pageh-needs-personalityh.patch mm.patch mm-slab-remove-unnecessary-unlikely-fix.patch mm-slub-record-final-state-of-slub-action-in-deactivate_slab-fix.patch mm-slub-improve-performance-by-skipping-checked-node-in-get_any_partial-fix.patch mm-page_owner-clamp-read-count-to-page_size-fix.patch mm-hotplug-optimize-clear_hwpoisoned_pages-fix.patch mm-ksm-do-not-block-on-page-lock-when-searching-stable-tree-fix.patch mm-memory_hotplug-print-reason-for-the-offlining-failure-fix.patch mm-memory_hotplug-be-more-verbose-for-memory-offline-failures-fix.patch mm-convert-totalram_pages-and-totalhigh_pages-variables-to-atomic-checkpatch-fixes.patch memory_hotplug-free-pages-as-higher-order-fix.patch memory_hotplug-free-pages-as-higher-order-fix-fix.patch fs-epoll-deal-with-wait_queue-only-once-fix.patch exec-separate-mm_anonpages-and-rlimit_stack-accounting-checkpatch-fixes.patch ipc-allow-boot-time-extension-of-ipcmni-from-32k-to-8m-checkpatch-fixes.patch scripts-atomic-check-atomicssh-dont-assume-that-scripts-are-executable.patch kernel-forkc-export-kernel_thread-to-modules.patch slab-leaks3-default-y.patch