mm-rmap-cleanup-partially-mapped-handling-in-__folio_remove_rmap.patch removed from -mm tree
The quilt patch titled
Subject: mm/rmap: cleanup partially-mapped handling in __folio_remove_rmap()
has been removed from the -mm tree. Its filename was
mm-rmap-cleanup-partially-mapped-handling-in-__folio_remove_rmap.patch
This patch was dropped because it was merged into the mm-stable branch of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
------------------------------------------------------
From: David Hildenbrand <[email protected]>
Subject: mm/rmap: cleanup partially-mapped handling in __folio_remove_rmap()
Date: Wed, 10 Jul 2024 23:43:50 +0200
Let's simplify and reduce code indentation. In the RMAP_LEVEL_PTE case, we already check for nr when computing partially_mapped.
For RMAP_LEVEL_PMD, it's a bit more confusing. Likely, we don't need the "nr" check, but we could have "nr < nr_pmdmapped" also if we stumbled into the "/* Raced ahead of another remove and an add? */" case. So let's simply move the nr check in there.
Note that partially_mapped is always false for small folios.
No functional change intended.
---
mm/rmap.c | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-)
mm/rmap.c renamed from mm/rmap.c~mm-rmap-cleanup-partially-mapped-handling-in-__folio_remove_rmap +10 -13
@@ -1568,22 +1568,19 @@ static __always_inline void __folio_remo } } - partially_mapped = nr < nr_pmdmapped; + partially_mapped = nr && nr < nr_pmdmapped;break ; } -if (nr) { -/* -* Queue anon large folio for deferred split if at least one -* page of the folio is unmapped and at least one page -* is still mapped. -* -* Check partially_mapped first to ensure it is a large folio. -*/ -if (folio_test_anon (folio) && partially_mapped && -list_empty (&folio->_deferred_list)) -deferred_split_folio (folio); - } +/* +* Queue anon large folio for deferred split if at least one page of +* the folio is unmapped and at least one page is still mapped. +* +* Check partially_mapped first to ensure it is a large folio. +*/ +if (partially_mapped &&folio_test_anon (folio) && +list_empty (&folio->_deferred_list)) +deferred_split_folio (folio);__folio_mod_stat (folio, -nr, -nr_pmdmapped);/*
_
Patches currently in -mm which might be from [email protected] are
mm-rmap-use-folio-_mapcount-for-small-folios.patch mm-always-inline-_compound_head-with-config_hugetlb_page_optimize_vmemmap=y.patch selftests-mm-fix-charge_reserved_hugetlbsh-test.patch