The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [PATCH v9 0/3] mm: clean up folio LRU and swap declarations
@ 2026-07-08 11:35 Jianyue Wu
  2026-07-08 11:35 ` [PATCH v9 1/3] mm/swap: colocate page-cluster sysctl with swap readahead Jianyue Wu
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Jianyue Wu @ 2026-07-08 11:35 UTC (permalink / raw)
  To: Andrew Morton, Chris Li, Kairui Song, Kemeng Shi, Nhat Pham,
	Baoquan He, Barry Song, Youngjun Park, Johannes Weiner,
	David Hildenbrand, Michal Hocko, Qi Zheng, Shakeel Butt,
	Lorenzo Stoakes, Axel Rasmussen, Yuanchu Xie, Wei Xu,
	Liam R. Howlett, Vlastimil Babka, Mike Rapoport,
	Suren Baghdasaryan, Michal Hocko, Jonathan Corbet, Shuah Khan,
	Hugh Dickins, Baolin Wang
  Cc: linux-mm, linux-kernel, linux-doc, Jianyue Wu, Matthew Wilcox,
	Baoquan He

This series splits folio LRU and swap cleanup into three steps:

  - move the page-cluster sysctl next to swap readahead in
    mm/swap_state.c
  - rename mm/swap.c to mm/folio.c after the swap-specific code
    moves out
  - move MM-internal reclaim declarations out of include/linux/swap.h

After this series, swap cache and swap-in readahead stay in
mm/swap_state.c. Folio LRU helpers live in mm/folio.c, and
MM-internal reclaim/workingset declarations move from
include/linux/swap.h to mm/internal.h (public LRU helpers used outside
mm/ remain in swap.h).

The first patch handles the swap-specific page-cluster state before the
file rename, so the rename commit only carries folio LRU code. The last
patch keeps the LRU helpers used outside mm/ in include/linux/swap.h and
moves the internal reclaim/workingset declarations to mm/internal.h.

Signed-off-by: Jianyue Wu <wujianyue000@gmail.com>
---
Changes in v9:
- Rebased onto akpm/mm-unstable (d11ba1f57061).
- Drop the unrelated blank line in mm/swap.h.
- Drop the redundant swap_readahead_setup() comment.
- Add Suggested-by Matthew Wilcox on patch 1/3.
- Link to v8: https://lore.kernel.org/r/20260708-ch-swap-series-plus-folio-lru-cleanup-v8-0-e816812698a8@gmail.com

Changes in v8:
- Rebased onto akpm/mm-unstable (0bfae5663f86).
- Re-tested full build, swap-in readahead smoke test, and
  run_vmtests.sh on x86.
- Make swap_readahead_setup() static and remove mm/swap.h export
  (including the CONFIG_SWAP=n stub).
- Refactor swap_state.c init: extract swap_sysfs_init(), add
  CONFIG_SYSFS=n stub.
- Drop swap_readahead_setup() call from kswapd_init() in vmscan.c.
- Add Reviewed-by Kairui Song on patch 1/3.
- Link to v7: https://lore.kernel.org/r/20260705-ch-swap-series-plus-folio-lru-cleanup-v7-0-a028e8b5fc3d@gmail.com

Changes in v7:
- Rebased onto akpm/mm-unstable (cfb8731f5396).
- Re-tested full build, swap-in readahead smoke test, and
  run_vmtests.sh on x86.
- Move swap_readahead_setup() into swap_init() in swap_state.c.
- Move version-history text below the "---" separator in the
  cover letter.
- Add Suggested-by and Acked-by Johannes Weiner on patch 1/3.
- Add Suggested-by Matthew Wilcox on patch 2/3.
- Link to v6: https://lore.kernel.org/r/20260701-ch-swap-series-plus-folio-lru-cleanup-v6-0-d4f648963382@gmail.com

Changes in v6:
- Rename mm/swap.c to mm/folio.c instead of folio_lru.c.
- Link to v5: https://lore.kernel.org/r/20260630-ch-swap-series-plus-folio-lru-cleanup-v5-0-4627aba8ed1e@gmail.com

Changes in v5:
- Rebased onto akpm/mm-unstable (81652c5a65d4).
- Fix mm/swap.h for CONFIG_SWAP=n after rebase.
- Tested swap-in readahead on x86 with swap: vm.page-cluster present
  and writable, swap in/out under anon memory pressure, page-cluster 0
  and 3 paths, no oops in dmesg; run_vmtests.sh passed.
- Link to v4: https://lore.kernel.org/r/20260603-ch-swap-series-plus-folio-lru-cleanup-v4-0-ce0219e100d9@gmail.com

Changes in v4:
- Address Baoquan He's review on v3: align patch 2 subject with
  rename-only scope; fix vm.rst sysctl documentation; refresh file
  header comments in mm/folio_lru.c and swap.h declaration comments.
- Expand patch 1 commit message on CONFIG_SWAP=n vm.page-cluster
  registration (also on CONFIG_SWAP=n kernels).
- Link to v3: https://lore.kernel.org/all/20260602-ch-swap-series-plus-folio-lru-cleanup-v3-0-5bbb567f8c99@gmail.com

---
Jianyue Wu (3):
      mm/swap: colocate page-cluster sysctl with swap readahead
      mm: rename swap.c to folio.c
      mm: move reclaim-internal declarations out of swap.h

 Documentation/admin-guide/sysctl/vm.rst |  3 --
 Documentation/core-api/mm-api.rst       |  2 +-
 MAINTAINERS                             |  3 +-
 include/linux/swap.h                    | 76 +++------------------------------
 mm/Makefile                             |  2 +-
 mm/{swap.c => folio.c}                  | 46 ++------------------
 mm/internal.h                           | 67 +++++++++++++++++++++++++++++
 mm/memfd.c                              |  1 +
 mm/swap.h                               |  2 -
 mm/swap_state.c                         | 50 +++++++++++++++++++++-
 mm/vmscan.c                             |  1 -
 11 files changed, 129 insertions(+), 124 deletions(-)
---
base-commit: d11ba1f570615ec8d4814d6313ee1d7075a33787
change-id: 20260531-ch-swap-series-plus-folio-lru-cleanup-d9781c8332dc

Best regards,
-- 
Jianyue Wu <wujianyue000@gmail.com>


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2026-08-04 11:11 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-08 11:35 [PATCH v9 0/3] mm: clean up folio LRU and swap declarations Jianyue Wu
2026-07-08 11:35 ` [PATCH v9 1/3] mm/swap: colocate page-cluster sysctl with swap readahead Jianyue Wu
2026-07-08 11:35 ` [PATCH v9 2/3] mm: rename swap.c to folio.c Jianyue Wu
2026-08-04  9:46   ` Lorenzo Stoakes (ARM)
2026-08-04 10:16     ` Jianyue Wu
2026-08-04 11:11     ` [PATCH] MAINTAINERS: move mm/folio.c to MM CORE Jianyue Wu
2026-07-08 11:35 ` [PATCH v9 3/3] mm: move reclaim-internal declarations out of swap.h Jianyue Wu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox