The patch titled Subject: Multi-gen LRU: skip CMA pages when they are not eligible has been added to the -mm mm-unstable branch. Its filename is multi-gen-lru-skip-cma-pages-when-they-are-not-eligible.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/multi-gen-lru-skip-cma-pages-when-they-are-not-eligible.patch This patch will later appear in the mm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm 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 via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: Charan Teja Kalla <quic_charante@xxxxxxxxxxx> Subject: Multi-gen LRU: skip CMA pages when they are not eligible Date: Wed, 9 Aug 2023 13:35:44 +0530 This patch is based on the commit 5da226dbfce3("mm: skip CMA pages when they are not available") which skips cma pages reclaim when they are not eligible for the current allocation context. In mglru, such pages are added to the tail of the immediate generation to maintain better LRU order, which is unlike the case of conventional LRU where such pages are directly added to the head of the LRU list(akin to adding to head of the youngest generation in mglru). No observable issue without this patch on MGLRU, but logically it make sense to skip the CMA page reclaim when those pages can't be satisfied for the current allocation context. Link: https://lkml.kernel.org/r/1691568344-13475-1-git-send-email-quic_charante@xxxxxxxxxxx Signed-off-by: Charan Teja Kalla <quic_charante@xxxxxxxxxxx> Reviewed-by: Kalesh Singh <kaleshsingh@xxxxxxxxxx> Cc: David Hildenbrand <david@xxxxxxxxxx> Cc: Suren Baghdasaryan <surenb@xxxxxxxxxx> Cc: Yu Zhao <yuzhao@xxxxxxxxxx> Cc: Zhaoyang Huang <zhaoyang.huang@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/vmscan.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/mm/vmscan.c~multi-gen-lru-skip-cma-pages-when-they-are-not-eligible +++ a/mm/vmscan.c @@ -4944,7 +4944,7 @@ static bool sort_folio(struct lruvec *lr } /* ineligible */ - if (zone > sc->reclaim_idx) { + if (zone > sc->reclaim_idx || skip_cma(folio, sc)) { gen = folio_inc_gen(lruvec, folio, false); list_move_tail(&folio->lru, &lrugen->folios[gen][type][zone]); return true; _ Patches currently in -mm which might be from quic_charante@xxxxxxxxxxx are mm-madvise-fix-uneven-accounting-of-psi.patch multi-gen-lru-skip-cma-pages-when-they-are-not-eligible.patch