[PATCH mm-unstable v3 0/6] mm/mglru: performance optimizations

From: Yu Zhao
Date: Sat Dec 07 2024 - 17:15:33 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 warning [3] fixed in v2, this version fixes another
warning [4] reported by syzbot.

[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/

Yu Zhao (6):
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

include/linux/mm_inline.h | 94 +++++----
include/linux/mmzone.h | 88 +++++---
mm/swap.c | 70 +++++--
mm/vmscan.c | 426 +++++++++++++++++---------------------
mm/workingset.c | 67 +++---
5 files changed, 375 insertions(+), 370 deletions(-)

--
2.47.0.338.g60cca15819-goog