The patch titled Subject: mm/page_alloc.c: remove software prefetching in __free_pages_core() has been added to the -mm tree. Its filename is mm-page_alloc-remove-software-prefetching-in-__free_pages_core.patch This patch should soon appear at http://ozlabs.org/~akpm/mmots/broken-out/mm-page_alloc-remove-software-prefetching-in-__free_pages_core.patch and later at http://ozlabs.org/~akpm/mmotm/broken-out/mm-page_alloc-remove-software-prefetching-in-__free_pages_core.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: Arun KS <arunks@xxxxxxxxxxxxxx> Subject: mm/page_alloc.c: remove software prefetching in __free_pages_core() They not only increase the code footprint, they actually make things slower rather than faster. Remove them as contemporary hardware doesn't need any hint. Link: http://lkml.kernel.org/r/1538727006-5727-2-git-send-email-arunks@xxxxxxxxxxxxxx Signed-off-by: Arun KS <arunks@xxxxxxxxxxxxxx> Suggested-by: Dan Williams <dan.j.williams@xxxxxxxxx> Reviewed-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Cc: Aaron Lu <aaron.lu@xxxxxxxxx> Cc: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx> Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> Cc: Haiyang Zhang <haiyangz@xxxxxxxxxxxxx> Cc: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx> Cc: Juergen Gross <jgross@xxxxxxxx> Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx> Cc: K. Y. Srinivasan <kys@xxxxxxxxxxxxx> Cc: Mathieu Malaterre <malat@xxxxxxxxxx> Cc: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx> Cc: Michal Hocko <mhocko@xxxxxxxx> Cc: Oscar Salvador <osalvador@xxxxxxx> Cc: Souptick Joarder <jrdr.linux@xxxxxxxxx> Cc: Srivatsa Vaddagiri <vatsa@xxxxxxxxxxxxxx> Cc: Stephen Hemminger <sthemmin@xxxxxxxxxxxxx> Cc: Vinayak Menon <vinmenon@xxxxxxxxxxxxxx> Cc: Vlastimil Babka <vbabka@xxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/page_alloc.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) --- a/mm/page_alloc.c~mm-page_alloc-remove-software-prefetching-in-__free_pages_core +++ a/mm/page_alloc.c @@ -1264,14 +1264,10 @@ void __free_pages_core(struct page *page struct page *p = page; unsigned int loop; - prefetchw(p); - for (loop = 0; loop < (nr_pages - 1); loop++, p++) { - prefetchw(p + 1); + for (loop = 0; loop < nr_pages ; loop++, p++) { __ClearPageReserved(p); set_page_count(p, 0); } - __ClearPageReserved(p); - set_page_count(p, 0); page_zone(page)->managed_pages += nr_pages; set_page_refcounted(page); _ Patches currently in -mm which might be from arunks@xxxxxxxxxxxxxx are memory_hotplug-free-pages-as-higher-order.patch mm-page_alloc-remove-software-prefetching-in-__free_pages_core.patch