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