Re: [PATCH v2 3/3] mm: rmap: support batched unmapping for file large folios
From: Lorenzo Stoakes <hidden>
Date: 2025-12-16 10:55:18
Also in:
linux-mm, lkml
On Tue, Dec 16, 2025 at 02:22:11PM +0800, Baolin Wang wrote:
On 2025/12/16 14:13, Barry Song wrote:quoted
quoted
quoted
quoted
diff --git a/mm/rmap.c b/mm/rmap.c index ec232165c47d..4c9d5777c8da 100644 --- a/mm/rmap.c +++ b/mm/rmap.c@@ -1855,9 +1855,10 @@ static inline unsigned int folio_unmap_pte_batch(struct folio *folio, end_addr = pmd_addr_end(addr, vma->vm_end); max_nr = (end_addr - addr) >> PAGE_SHIFT; - /* We only support lazyfree batching for now ... */ - if (!folio_test_anon(folio) || folio_test_swapbacked(folio)) + /* We only support lazyfree or file folios batching for now ... */ + if (folio_test_anon(folio) && folio_test_swapbacked(folio))Why is it now ok to support file-backed batched unmapping when it wasn't in Barry's series (see [0])? You don't seem to be justifying this?Barry's series[0] is merely aimed at optimizing lazyfree anonymous large folios and does not continue to optimize anonymous large folios or file-backed large folios at that point.Yep. At that time, I didn’t have an Android machine with a filesystem that supported large folios, so I focused on lazyfree. But I agree that lazyfree anon folios and file folios are quite similar.quoted
Subsequently, Barry sent out a new patch (see [1]) to optimize anonymous large folios. As for file-backed large folios, the batched unmapping support is relatively simple, since we only need to clear the PTE entries for file-backed large folios.Yep. It is actually quite straightforward to go from lazyfree anon folios to file folios. Swap-backed anon folios are much more tricky, though.Agree. Thanks Barry for reviewing and confirming.
OK that makes me less concerned, but you do need to put some more justification in the commit message. Cheers, Lorenzo