[patch 096/146] mm/mempolicy: use policy_node helper with MPOL_PREFERRED_MANY
From: Andrew Morton <akpm@linux-foundation.org>
Date: 2022-01-14 22:08:21
Also in:
linux-mm, mm-commits
From: "Aneesh Kumar K.V" <redacted> Subject: mm/mempolicy: use policy_node helper with MPOL_PREFERRED_MANY Patch series "mm: add new syscall set_mempolicy_home_node", v6. This patch (of 3): A followup patch will enable setting a home node with MPOL_PREFERRED_MANY memory policy. To facilitate that switch to using policy_node helper. There is no functional change in this patch. Link: https://lkml.kernel.org/r/20211202123810.267175-1-aneesh.kumar@linux.ibm.com Link: https://lkml.kernel.org/r/20211202123810.267175-2-aneesh.kumar@linux.ibm.com Signed-off-by: Aneesh Kumar K.V <redacted> Acked-by: Michal Hocko <mhocko@suse.com> Cc: Ben Widawsky <redacted> Cc: Dave Hansen <dave.hansen@linux.intel.com> Cc: Feng Tang <redacted> Cc: Andrea Arcangeli <redacted> Cc: Mel Gorman <redacted> Cc: Mike Kravetz <redacted> Cc: Randy Dunlap <rdunlap@infradead.org> Cc: Vlastimil Babka <redacted> Cc: Andi Kleen <redacted> Cc: Dan Williams <redacted> Cc: Huang Ying <redacted> Cc: <redacted> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> --- mm/mempolicy.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
--- a/mm/mempolicy.c~mm-mempolicy-use-policy_node-helper-with-mpol_preferred_many
+++ a/mm/mempolicy.c@@ -2062,7 +2062,7 @@ static struct page *alloc_pages_preferre preferred_gfp &= ~(__GFP_DIRECT_RECLAIM | __GFP_NOFAIL); page = __alloc_pages(preferred_gfp, order, nid, &pol->nodes); if (!page) - page = __alloc_pages(gfp, order, numa_node_id(), NULL); + page = __alloc_pages(gfp, order, nid, NULL); return page; }
@@ -2104,6 +2104,7 @@ struct page *alloc_pages_vma(gfp_t gfp, } if (pol->mode == MPOL_PREFERRED_MANY) { + node = policy_node(gfp, pol, node); page = alloc_pages_preferred_many(gfp, order, node, pol); mpol_cond_put(pol); goto out;
@@ -2187,7 +2188,7 @@ struct page *alloc_pages(gfp_t gfp, unsi page = alloc_page_interleave(gfp, order, interleave_nodes(pol)); else if (pol->mode == MPOL_PREFERRED_MANY) page = alloc_pages_preferred_many(gfp, order, - numa_node_id(), pol); + policy_node(gfp, pol, numa_node_id()), pol); else page = __alloc_pages(gfp, order, policy_node(gfp, pol, numa_node_id()),
_