The patch titled Subject: mm/vmscan: never demote for memcg reclaim has been added to the -mm tree. Its filename is mm-vmscan-never-demote-for-memcg-reclaim.patch This patch should soon appear at https://ozlabs.org/~akpm/mmots/broken-out/mm-vmscan-never-demote-for-memcg-reclaim.patch and later at https://ozlabs.org/~akpm/mmotm/broken-out/mm-vmscan-never-demote-for-memcg-reclaim.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: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx> Subject: mm/vmscan: never demote for memcg reclaim Global reclaim aims to reduce the amount of memory used on a given node or set of nodes. Migrating pages to another node serves this purpose. memcg reclaim is different. Its goal is to reduce the total memory consumption of the entire memcg, across all nodes. Migration does not assist memcg reclaim because it just moves page contents between nodes rather than actually reducing memory consumption. Link: https://lkml.kernel.org/r/20210715055145.195411-9-ying.huang@xxxxxxxxx Signed-off-by: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx> Signed-off-by: "Huang, Ying" <ying.huang@xxxxxxxxx> Suggested-by: Yang Shi <yang.shi@xxxxxxxxxxxxxxxxx> Reviewed-by: Yang Shi <shy828301@xxxxxxxxx> Cc: Michal Hocko <mhocko@xxxxxxxx> Cc: Wei Xu <weixugc@xxxxxxxxxx> Cc: Oscar Salvador <osalvador@xxxxxxx> Cc: Zi Yan <ziy@xxxxxxxxxx> Cc: David Rientjes <rientjes@xxxxxxxxxx> Cc: Dan Williams <dan.j.williams@xxxxxxxxx> Cc: David Hildenbrand <david@xxxxxxxxxx> Cc: Greg Thelen <gthelen@xxxxxxxxxx> Cc: Keith Busch <kbusch@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/vmscan.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) --- a/mm/vmscan.c~mm-vmscan-never-demote-for-memcg-reclaim +++ a/mm/vmscan.c @@ -521,8 +521,13 @@ static long add_nr_deferred(long nr, str static bool can_demote_anon_pages(int nid, struct scan_control *sc) { - if (sc && sc->no_demotion) - return false; + if (sc) { + if (sc->no_demotion) + return false; + /* It is pointless to do demotion in memcg reclaim */ + if (cgroup_reclaim(sc)) + return false; + } if (next_demotion_node(nid) == NUMA_NO_NODE) return false; _ Patches currently in -mm which might be from dave.hansen@xxxxxxxxxxxxxxx are mm-numa-automatically-generate-node-migration-order.patch mm-migrate-update-node-demotion-order-on-hotplug-events.patch mm-migrate-demote-pages-during-reclaim.patch mm-vmscan-add-helper-for-querying-ability-to-age-anonymous-pages.patch mm-vmscan-never-demote-for-memcg-reclaim.patch mm-mempolicy-add-mpol_preferred_many-for-multiple-preferred-nodes.patch