Series of lru_add_drain_all()-related patches, arising from recent
mm/gup migration report from Will Deacon. Based on 6.17-rc3 but apply
to latest mm.git. I suggest all but 7/7 be hotfixes going to 6.17 and
stable, but you might not be persuaded by "counter the increase" ones.
1/7 mm: fix folio_expected_ref_count() when PG_private_2
2/7 mm/gup: check ref_count instead of lru before migration
3/7 mm/gup: local lru_add_drain() to avoid lru_add_drain_all()
4/7 mm: Revert "mm/gup: clear the LRU flag of a page before
5/7 mm: Revert "mm: vmscan.c: fix OOM on swap stress test"
6/7 mm: folio_may_be_cached() unless folio_test_large()
7/7 mm: lru_add_drain_all() do local lru_add_drain() first
include/linux/mm.h | 4 ++--
include/linux/swap.h | 10 ++++++++++
mm/gup.c | 6 +++++-
mm/mlock.c | 6 +++---
mm/swap.c | 53 ++++++++++++++++++++++++++++------------------------
mm/vmscan.c | 2 +-
6 files changed, 50 insertions(+), 31 deletions(-)
Thanks,
Hugh