]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
memcg-add-tracing-for-memcg-stat-updates-v2
authorShakeel Butt <shakeel.butt@linux.dev>
Tue, 15 Oct 2024 21:37:21 +0000 (14:37 -0700)
committerAndrew Morton <akpm@linux-foundation.org>
Fri, 1 Nov 2024 04:29:06 +0000 (21:29 -0700)
use unsigned long type for memcg_rstat_events, per Yosry

Link: https://lkml.kernel.org/r/20241015213721.3804209-1-shakeel.butt@linux.dev
Signed-off-by: Shakeel Butt <shakeel.butt@linux.dev>
Acked-by: Roman Gushchin <roman.gushchin@linux.dev>
Reviewed-by: Yosry Ahmed <yosryahmed@google.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Muchun Song <songmuchun@bytedance.com>
Cc: JP Kobryn <inwardvessel@gmail.com>
Cc: Steven Rostedt (Google) <rostedt@goodmis.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
include/trace/events/memcg.h

index 913db9aba580b6b748baf7de5cc614dadcb2a151..8667e57816d213972165815cdc1546ee56f6d406 100644 (file)
@@ -9,7 +9,7 @@
 #include <linux/tracepoint.h>
 
 
-DECLARE_EVENT_CLASS(memcg_rstat,
+DECLARE_EVENT_CLASS(memcg_rstat_stats,
 
        TP_PROTO(struct mem_cgroup *memcg, int item, int val),
 
@@ -31,23 +31,45 @@ DECLARE_EVENT_CLASS(memcg_rstat,
                  __entry->id, __entry->item, __entry->val)
 );
 
-DEFINE_EVENT(memcg_rstat, mod_memcg_state,
+DEFINE_EVENT(memcg_rstat_stats, mod_memcg_state,
 
        TP_PROTO(struct mem_cgroup *memcg, int item, int val),
 
        TP_ARGS(memcg, item, val)
 );
 
-DEFINE_EVENT(memcg_rstat, mod_memcg_lruvec_state,
+DEFINE_EVENT(memcg_rstat_stats, mod_memcg_lruvec_state,
 
        TP_PROTO(struct mem_cgroup *memcg, int item, int val),
 
        TP_ARGS(memcg, item, val)
 );
 
-DEFINE_EVENT(memcg_rstat, count_memcg_events,
+DECLARE_EVENT_CLASS(memcg_rstat_events,
 
-       TP_PROTO(struct mem_cgroup *memcg, int item, int val),
+       TP_PROTO(struct mem_cgroup *memcg, int item, unsigned long val),
+
+       TP_ARGS(memcg, item, val),
+
+       TP_STRUCT__entry(
+               __field(u64, id)
+               __field(int, item)
+               __field(unsigned long, val)
+       ),
+
+       TP_fast_assign(
+               __entry->id = cgroup_id(memcg->css.cgroup);
+               __entry->item = item;
+               __entry->val = val;
+       ),
+
+       TP_printk("memcg_id=%llu item=%d val=%lu",
+                 __entry->id, __entry->item, __entry->val)
+);
+
+DEFINE_EVENT(memcg_rstat_events, count_memcg_events,
+
+       TP_PROTO(struct mem_cgroup *memcg, int item, unsigned long val),
 
        TP_ARGS(memcg, item, val)
 );