Re: [PATCH v2 3/3] mm: rmap: support batched unmapping for file large folios
From: Baolin Wang <baolin.wang@linux.alibaba.com>
Date: 2025-12-16 06:22:21
Also in:
linux-mm, lkml
On 2025/12/16 14:13, Barry Song wrote:
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.