1/* SPDX-License-Identifier: GPL-2.0 */
2#undef TRACE_SYSTEM
3#define TRACE_SYSTEM cpuhp
4
5#if !defined(_TRACE_CPUHP_H) || defined(TRACE_HEADER_MULTI_READ)
6#define _TRACE_CPUHP_H
7
8#include <linux/tracepoint.h>
9
10TRACE_EVENT(cpuhp_enter,
11
12 TP_PROTO(unsigned int cpu,
13 int target,
14 int idx,
15 int (*fun)(unsigned int)),
16
17 TP_ARGS(cpu, target, idx, fun),
18
19 TP_STRUCT__entry(
20 __field( unsigned int, cpu )
21 __field( int, target )
22 __field( int, idx )
23 __field( void *, fun )
24 ),
25
26 TP_fast_assign(
27 __entry->cpu = cpu;
28 __entry->target = target;
29 __entry->idx = idx;
30 __entry->fun = fun;
31 ),
32
33 TP_printk("cpu: %04u target: %3d step: %3d (%ps)",
34 __entry->cpu, __entry->target, __entry->idx, __entry->fun)
35);
36
37TRACE_EVENT(cpuhp_multi_enter,
38
39 TP_PROTO(unsigned int cpu,
40 int target,
41 int idx,
42 int (*fun)(unsigned int, struct hlist_node *),
43 struct hlist_node *node),
44
45 TP_ARGS(cpu, target, idx, fun, node),
46
47 TP_STRUCT__entry(
48 __field( unsigned int, cpu )
49 __field( int, target )
50 __field( int, idx )
51 __field( void *, fun )
52 ),
53
54 TP_fast_assign(
55 __entry->cpu = cpu;
56 __entry->target = target;
57 __entry->idx = idx;
58 __entry->fun = fun;
59 ),
60
61 TP_printk("cpu: %04u target: %3d step: %3d (%ps)",
62 __entry->cpu, __entry->target, __entry->idx, __entry->fun)
63);
64
65TRACE_EVENT(cpuhp_exit,
66
67 TP_PROTO(unsigned int cpu,
68 int state,
69 int idx,
70 int ret),
71
72 TP_ARGS(cpu, state, idx, ret),
73
74 TP_STRUCT__entry(
75 __field( unsigned int, cpu )
76 __field( int, state )
77 __field( int, idx )
78 __field( int, ret )
79 ),
80
81 TP_fast_assign(
82 __entry->cpu = cpu;
83 __entry->state = state;
84 __entry->idx = idx;
85 __entry->ret = ret;
86 ),
87
88 TP_printk(" cpu: %04u state: %3d step: %3d ret: %d",
89 __entry->cpu, __entry->state, __entry->idx, __entry->ret)
90);
91
92#endif
93
94/* This part must be outside protection */
95#include <trace/define_trace.h>
96

source code of linux/include/trace/events/cpuhp.h