]> www.infradead.org Git - users/hch/misc.git/commitdiff
memcg: move mem_cgroup_event_ratelimit to v1 code
authorShakeel Butt <shakeel.butt@linux.dev>
Thu, 15 Aug 2024 05:04:48 +0000 (22:04 -0700)
committerAndrew Morton <akpm@linux-foundation.org>
Mon, 2 Sep 2024 03:26:19 +0000 (20:26 -0700)
There are no callers of mem_cgroup_event_ratelimit() in the v2 code.  Move
it to v1 only code and rename it to memcg1_event_ratelimit().

Link: https://lkml.kernel.org/r/20240815050453.1298138-3-shakeel.butt@linux.dev
Signed-off-by: Shakeel Butt <shakeel.butt@linux.dev>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Muchun Song <muchun.song@linux.dev>
Cc: Roman Gushchin <roman.gushchin@linux.dev>
Cc: T.J. Mercier <tjmercier@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/memcontrol-v1.c
mm/memcontrol-v1.h
mm/memcontrol.c

index 417c96f2da28e8c3984792903d5daed1786a9e2b..38809a26089acc4740cd14afbcc6530dc4bfbcb1 100644 (file)
@@ -1439,6 +1439,34 @@ static void mem_cgroup_threshold(struct mem_cgroup *memcg)
        }
 }
 
+#define THRESHOLDS_EVENTS_TARGET 128
+#define SOFTLIMIT_EVENTS_TARGET 1024
+
+static bool memcg1_event_ratelimit(struct mem_cgroup *memcg,
+                               enum mem_cgroup_events_target target)
+{
+       unsigned long val, next;
+
+       val = __this_cpu_read(memcg->events_percpu->nr_page_events);
+       next = __this_cpu_read(memcg->events_percpu->targets[target]);
+       /* from time_after() in jiffies.h */
+       if ((long)(next - val) < 0) {
+               switch (target) {
+               case MEM_CGROUP_TARGET_THRESH:
+                       next = val + THRESHOLDS_EVENTS_TARGET;
+                       break;
+               case MEM_CGROUP_TARGET_SOFTLIMIT:
+                       next = val + SOFTLIMIT_EVENTS_TARGET;
+                       break;
+               default:
+                       break;
+               }
+               __this_cpu_write(memcg->events_percpu->targets[target], next);
+               return true;
+       }
+       return false;
+}
+
 /*
  * Check events in order.
  *
@@ -1449,11 +1477,11 @@ void memcg1_check_events(struct mem_cgroup *memcg, int nid)
                return;
 
        /* threshold event is triggered in finer grain than soft limit */
-       if (unlikely(mem_cgroup_event_ratelimit(memcg,
+       if (unlikely(memcg1_event_ratelimit(memcg,
                                                MEM_CGROUP_TARGET_THRESH))) {
                bool do_softlimit;
 
-               do_softlimit = mem_cgroup_event_ratelimit(memcg,
+               do_softlimit = memcg1_event_ratelimit(memcg,
                                                MEM_CGROUP_TARGET_SOFTLIMIT);
                mem_cgroup_threshold(memcg);
                if (unlikely(do_softlimit))
index 8feccecf8e2aac6265615915b2034afeaeb5cfda..fb7d439f19de7f299c5a15a6cb709f013a4585d0 100644 (file)
@@ -62,8 +62,6 @@ struct memcg1_events_percpu {
        unsigned long targets[MEM_CGROUP_NTARGETS];
 };
 
-bool mem_cgroup_event_ratelimit(struct mem_cgroup *memcg,
-                               enum mem_cgroup_events_target target);
 unsigned long mem_cgroup_usage(struct mem_cgroup *memcg, bool swap);
 
 void drain_all_stock(struct mem_cgroup *root_memcg);
index 36ec28d3d25eb41ac2da2b049a1b925b2613a632..35dec7e38870b4dfb1e5d521720021a25e361e2b 100644 (file)
@@ -95,9 +95,6 @@ static bool cgroup_memory_nobpf __ro_after_init;
 static DECLARE_WAIT_QUEUE_HEAD(memcg_cgwb_frn_waitq);
 #endif
 
-#define THRESHOLDS_EVENTS_TARGET 128
-#define SOFTLIMIT_EVENTS_TARGET 1024
-
 static inline bool task_is_dying(void)
 {
        return tsk_is_oom_victim(current) || fatal_signal_pending(current) ||
@@ -856,31 +853,6 @@ void mem_cgroup_charge_statistics(struct mem_cgroup *memcg, int nr_pages)
        __this_cpu_add(memcg->events_percpu->nr_page_events, nr_pages);
 }
 
-bool mem_cgroup_event_ratelimit(struct mem_cgroup *memcg,
-                               enum mem_cgroup_events_target target)
-{
-       unsigned long val, next;
-
-       val = __this_cpu_read(memcg->events_percpu->nr_page_events);
-       next = __this_cpu_read(memcg->events_percpu->targets[target]);
-       /* from time_after() in jiffies.h */
-       if ((long)(next - val) < 0) {
-               switch (target) {
-               case MEM_CGROUP_TARGET_THRESH:
-                       next = val + THRESHOLDS_EVENTS_TARGET;
-                       break;
-               case MEM_CGROUP_TARGET_SOFTLIMIT:
-                       next = val + SOFTLIMIT_EVENTS_TARGET;
-                       break;
-               default:
-                       break;
-               }
-               __this_cpu_write(memcg->events_percpu->targets[target], next);
-               return true;
-       }
-       return false;
-}
-
 struct mem_cgroup *mem_cgroup_from_task(struct task_struct *p)
 {
        /*