summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShakeel Butt <shakeel.butt@linux.dev>2026-09-02 10:43:09 -0700
committerAndrew Morton <akpm@linux-foundation.org>2026-10-06 17:39:02 -0700
commitfa148fc5e18e6d2b7197113ff414e68d53ea338c (patch)
tree22ac25c16db4210d85e34a520b5fc7ea1ea33d32
parentd5d1712c5928b46e848857037d89541fdd1e32a0 (diff)
downloadlinux-next-fa148fc5e18e6d2b7197113ff414e68d53ea338c.tar.gz
linux-next-fa148fc5e18e6d2b7197113ff414e68d53ea338c.zip
memcg: remove the per-node soft limit tree fields
tree_node, usage_in_excess and on_tree only existed for the soft limit rbtree. They also doubled as the buffer between the read-mostly head of struct mem_cgroup_per_node and its update-often tail, so replace them with the explicit padding that CONFIG_MEMCG_V1=n already used. Link: https://lore.kernel.org/20260902174311.1772372-7-shakeel.butt@linux.dev Signed-off-by: Shakeel Butt <shakeel.butt@linux.dev> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Acked-by: Michal Hocko <mhocko@suse.com> Acked-by: Lorenzo Stoakes (ARM) <ljs@kernel.org> Cc: Axel Rasmussen <axelrasmussen@google.com> Cc: Barry Song <baohua@kernel.org> Cc: David Hildenbrand <david@kernel.org> Cc: Johannes Weiner <hannes@cmpxchg.org> Cc: Kairui Song <kasong@tencent.com> Cc: Muchun Song <muchun.song@linux.dev> Cc: Roman Gushchin <roman.gushchin@linux.dev> Cc: T.J. Mercier <tjmercier@google.com>
-rw-r--r--include/linux/memcontrol.h13
1 files changed, 0 insertions, 13 deletions
diff --git a/include/linux/memcontrol.h b/include/linux/memcontrol.h
index 11c1fa88d6fd..1eababed16f5 100644
--- a/include/linux/memcontrol.h
+++ b/include/linux/memcontrol.h
@@ -95,20 +95,7 @@ struct mem_cgroup_per_node {
struct lruvec_stats *lruvec_stats;
struct shrinker_info __rcu *shrinker_info;
-#ifdef CONFIG_MEMCG_V1
- /*
- * Memcg-v1 only stuff in middle as buffer between read mostly fields
- * and update often fields to avoid false sharing. If v1 stuff is
- * not present, an explicit padding is needed.
- */
-
- struct rb_node tree_node; /* RB tree node */
- unsigned long usage_in_excess;/* Set to the value by which */
- /* the soft limit is exceeded*/
- bool on_tree;
-#else
CACHELINE_PADDING(_pad1_);
-#endif
/* Fields which get updated often at the end. */
struct lruvec lruvec;