Re: [PATCH v2 0/2] mm: fix node reclaim swappiness handling

From: Ridong Chen

Date: Wed Jul 22 2026 - 21:14:15 EST




On 7/16/2026 11:17 AM, Ridong wrote:
From: Ridong <chenridong@xxxxxxxxxx>

The per-node proactive reclaim interface
(/sys/devices/system/node/nodeX/reclaim) accepts a swappiness parameter,
but it is silently ignored when CONFIG_MEMCG is disabled. The root cause
is that sc_swappiness() has separate implementations for CONFIG_MEMCG and
!CONFIG_MEMCG, and the latter never checks proactive_swappiness.

Patch 1 moves mem_cgroup_swappiness() and vm_swappiness out of the public
include/linux/swap.h into the mm-private mm/swap.h, and makes the helper
handle both CONFIG_MEMCG and !CONFIG_MEMCG in a single inline function.
This is a prerequisite for unifying sc_swappiness().

Patch 2 consolidates sc_swappiness() into a single definition that works
regardless of CONFIG_MEMCG, fixing the node reclaim swappiness bug.

---

v1 -> v2:
- Move mem_cgroup_swappiness() and vm_swappiness to mm/swap.h instead of
include/linux/memcontrol.h. Suggested by Barry Song.
- Correct fix tag for patch 2.

v1: https://lore.kernel.org/all/20260711091157.306070-1-ridong.chen@xxxxxxxxx/

Ridong Chen (2):
memcg: move mem_cgroup_swappiness and vm_swappiness to mm/swap.h
mm: vmscan: fix node reclaim ignoring swappiness parameter

include/linux/memcontrol.h | 4 ++--
include/linux/swap.h | 19 -------------------
mm/memcontrol.c | 4 ++--
mm/swap.h | 20 ++++++++++++++++++++
mm/vmscan.c | 19 +++++++------------
5 files changed, 31 insertions(+), 35 deletions(-)


Hello all,

Can this series be applied?

Just a reminder in case this gets buried.

--
Best regards
Ridong