[PATCH v4 0/4] mm: batched unmap lazyfree large folios during reclamation
Lorenzo Stoakes
lorenzo.stoakes at oracle.com
Wed Jun 25 06:49:51 PDT 2025
+cc Rik, Liam, Vlastimil, Harry
This touches rmap so please cc rmap reviewers. On future revisions of this
series!
On Fri, Feb 14, 2025 at 10:30:11PM +1300, Barry Song wrote:
> This patchset resolves the issue by marking only genuinely dirty folios
> as swap-backed, as suggested by David, and transitioning to batched
> unmapping of entire folios in try_to_unmap_one(). Consequently, the
> deferred_split count drops to zero, and memory reclamation performance
> improves significantly — reclaiming 64KiB lazyfree large folios is now
> 2.5x faster(The specific data is embedded in the changelog of patch
> 3/4).
Nice!
>
> By the way, while the patchset is primarily aimed at PTE-mapped large
> folios, Baolin and Lance also found that try_to_unmap_one() handles
> lazyfree redirtied PMD-mapped large folios inefficiently — it splits
> the PMD into PTEs and iterates over them. This patchset removes the
> unnecessary splitting, enabling us to skip redirtied PMD-mapped large
> folios 3.5X faster during memory reclamation. (The specific data can
> be found in the changelog of patch 4/4).
Also nice!
More information about the linux-riscv
mailing list