Re: [PATCH for-7.4 0/9] memcg: remove the v1 soft limit
From: Lorenzo Stoakes (ARM)
Date: Thu Aug 13 2026 - 05:33:26 EST
On Tue, Aug 11, 2026 at 01:31:54PM -0700, Shakeel Butt wrote:
> Syzbot reported [1] a set_mm_walk() warning from kswapd. Soft limit
> reclaim is the only thing that runs shrink_lruvec() from kswapd with a
> target memcg set, and thus the only way kswapd can reach
> lru_gen_shrink_lruvec() and in turn set_mm_walk(). The offender,
> mem_cgroup_shrink_node(), has long carried a "Only used by soft limit
> reclaim. Do not reuse for anything else." comment and a priority hack,
> and it simply never got taught about MGLRU.
>
> Rather than teach it, let's delete it. The v1 soft limit was deprecated
> in v6.12 by commit 569c4f62d84a ("memcg: initiate deprecation of v1
> soft limit"). Nobody has reported depending on it in the ~21 months
> since, and v2 has covered the same ground for a long time with
> memory.low and memory.min.
>
> Link: https://lore.kernel.org/all/6a7a6929.b50370da.49fe0.005e.GAE@xxxxxxxxxx/ [1]
>
> Shakeel Butt (9):
> memcg: make the v1 soft limit knob inert
> memcg: remove v1 soft limit reclaim
> memcg: remove mem_cgroup_shrink_node()
> memcg: remove the soft limit reclaim tracepoints
> memcg: remove the soft limit rbtree
> memcg: remove lru_gen_soft_reclaim()
> memcg: remove the per-node soft limit tree fields
> memcg: remove mem_cgroup->soft_limit
> memcg: simplify v1 event ratelimiting
>
> .../admin-guide/cgroup-v1/memory.rst | 49 +-
> include/linux/memcontrol.h | 27 --
> include/linux/mmzone.h | 30 +-
> include/trace/events/vmscan.h | 14 -
> mm/internal.h | 4 -
> mm/memcontrol-v1.c | 435 ++----------------
> mm/memcontrol-v1.h | 12 +-
> mm/memcontrol.c | 7 +-
> mm/vmscan.c | 96 +---
> 9 files changed, 66 insertions(+), 608 deletions(-)
This is a gorgeous diffstat :)
Obviously not my area but looking over it, all LGTM so feel free to add:
Acked-by: Lorenzo Stoakes (ARM) <ljs@xxxxxxxxxx>
To the whole series!
>
> --
> 2.53.0-Meta
>
--
Cheers, Lorenzo