[PATCH mm-unstable v4 0/7] mm/mglru: performance optimizations
From: Yu Zhao
Date: Mon Dec 30 2024 - 23:35:51 EST
This series improves performance for some previously reported test
cases. Most of the code changes gathered here has been floating on the
mailing list [1][2]. They are now properly organized and have gone
through various benchmarks on client and server devices, including
Android, FIO, memcached, multiple VMs and MongoDB.
In addition to the syzbot regressions fixed in v2 [3] and v3 [4], this
version fixes two more regressions: one reported by Oliver Sang [5]
and the other by Barry Song.
[1] https://lore.kernel.org/CAOUHufahuWcKf5f1Sg3emnqX+cODuR=2TQo7T4Gr-QYLujn4RA@xxxxxxxxxxxxxx/
[2] https://lore.kernel.org/CAOUHufawNerxqLm7L9Yywp3HJFiYVrYO26ePUb1jH-qxNGWzyA@xxxxxxxxxxxxxx/
[3] https://lore.kernel.org/67294349.050a0220.701a.0010.GAE@xxxxxxxxxx/
[4] https://lore.kernel.org/67549eca.050a0220.2477f.001b.GAE@xxxxxxxxxx/
[5] https://lore.kernel.org/202412231601.f1eb8f84-lkp@xxxxxxxxx/
Yu Zhao (7):
mm/mglru: clean up workingset
mm/mglru: optimize deactivation
mm/mglru: rework aging feedback
mm/mglru: rework type selection
mm/mglru: rework refault detection
mm/mglru: rework workingset protection
mm/mglru: fix PTE-mapped large folios
include/linux/mm_inline.h | 88 ++++---
include/linux/mmzone.h | 99 +++++---
mm/swap.c | 70 ++++--
mm/vmscan.c | 515 +++++++++++++++++++-------------------
mm/workingset.c | 67 +++--
5 files changed, 445 insertions(+), 394 deletions(-)
--
2.47.1.613.gc27f4b7a9f-goog