xref: /linux/include/trace/events/sched_ext.h (revision 6dfafbd0299a60bfb5d5e277fdf100037c7ded07)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #undef TRACE_SYSTEM
3 #define TRACE_SYSTEM sched_ext
4 
5 #if !defined(_TRACE_SCHED_EXT_H) || defined(TRACE_HEADER_MULTI_READ)
6 #define _TRACE_SCHED_EXT_H
7 
8 #include <linux/tracepoint.h>
9 
10 TRACE_EVENT(sched_ext_dump,
11 
12 	TP_PROTO(const char *line),
13 
14 	TP_ARGS(line),
15 
16 	TP_STRUCT__entry(
17 		__string(line, line)
18 	),
19 
20 	TP_fast_assign(
21 		__assign_str(line);
22 	),
23 
24 	TP_printk("%s",
25 		__get_str(line)
26 	)
27 );
28 
29 TRACE_EVENT(sched_ext_event,
30 	    TP_PROTO(const char *name, __s64 delta),
31 	    TP_ARGS(name, delta),
32 
33 	TP_STRUCT__entry(
34 		__string(name, name)
35 		__field(	__s64,		delta		)
36 	),
37 
38 	TP_fast_assign(
39 		__assign_str(name);
40 		__entry->delta		= delta;
41 	),
42 
43 	TP_printk("name %s delta %lld",
44 		  __get_str(name), __entry->delta
45 	)
46 );
47 
48 TRACE_EVENT(sched_ext_bypass_lb,
49 
50 	TP_PROTO(__u32 node, __u32 nr_cpus, __u32 nr_tasks, __u32 nr_balanced,
51 		 __u32 before_min, __u32 before_max,
52 		 __u32 after_min, __u32 after_max),
53 
54 	TP_ARGS(node, nr_cpus, nr_tasks, nr_balanced,
55 		before_min, before_max, after_min, after_max),
56 
57 	TP_STRUCT__entry(
58 		__field(	__u32,		node		)
59 		__field(	__u32,		nr_cpus		)
60 		__field(	__u32,		nr_tasks	)
61 		__field(	__u32,		nr_balanced	)
62 		__field(	__u32,		before_min	)
63 		__field(	__u32,		before_max	)
64 		__field(	__u32,		after_min	)
65 		__field(	__u32,		after_max	)
66 	),
67 
68 	TP_fast_assign(
69 		__entry->node		= node;
70 		__entry->nr_cpus	= nr_cpus;
71 		__entry->nr_tasks	= nr_tasks;
72 		__entry->nr_balanced	= nr_balanced;
73 		__entry->before_min	= before_min;
74 		__entry->before_max	= before_max;
75 		__entry->after_min	= after_min;
76 		__entry->after_max	= after_max;
77 	),
78 
79 	TP_printk("node %u: nr_cpus=%u nr_tasks=%u nr_balanced=%u min=%u->%u max=%u->%u",
80 		  __entry->node, __entry->nr_cpus,
81 		  __entry->nr_tasks, __entry->nr_balanced,
82 		  __entry->before_min, __entry->after_min,
83 		  __entry->before_max, __entry->after_max
84 	)
85 );
86 
87 #endif /* _TRACE_SCHED_EXT_H */
88 
89 /* This part must be outside protection */
90 #include <trace/define_trace.h>
91