Warning: This file is not a C or C++ file. It does not have highlighting.

1/* SPDX-License-Identifier: GPL-2.0 */
2#undef TRACE_SYSTEM
3#define TRACE_SYSTEM rv
4
5#if !defined(_TRACE_RV_H) || defined(TRACE_HEADER_MULTI_READ)
6#define _TRACE_RV_H
7
8#include <linux/rv.h>
9#include <linux/tracepoint.h>
10
11#ifdef CONFIG_DA_MON_EVENTS_IMPLICIT
12DECLARE_EVENT_CLASS(event_da_monitor,
13
14 TP_PROTO(char *state, char *event, char *next_state, bool final_state),
15
16 TP_ARGS(state, event, next_state, final_state),
17
18 TP_STRUCT__entry(
19 __array( char, state, MAX_DA_NAME_LEN )
20 __array( char, event, MAX_DA_NAME_LEN )
21 __array( char, next_state, MAX_DA_NAME_LEN )
22 __field( bool, final_state )
23 ),
24
25 TP_fast_assign(
26 memcpy(__entry->state, state, MAX_DA_NAME_LEN);
27 memcpy(__entry->event, event, MAX_DA_NAME_LEN);
28 memcpy(__entry->next_state, next_state, MAX_DA_NAME_LEN);
29 __entry->final_state = final_state;
30 ),
31
32 TP_printk("%s x %s -> %s %s",
33 __entry->state,
34 __entry->event,
35 __entry->next_state,
36 __entry->final_state ? "(final)" : "")
37);
38
39DECLARE_EVENT_CLASS(error_da_monitor,
40
41 TP_PROTO(char *state, char *event),
42
43 TP_ARGS(state, event),
44
45 TP_STRUCT__entry(
46 __array( char, state, MAX_DA_NAME_LEN )
47 __array( char, event, MAX_DA_NAME_LEN )
48 ),
49
50 TP_fast_assign(
51 memcpy(__entry->state, state, MAX_DA_NAME_LEN);
52 memcpy(__entry->event, event, MAX_DA_NAME_LEN);
53 ),
54
55 TP_printk("event %s not expected in the state %s",
56 __entry->event,
57 __entry->state)
58);
59
60#ifdef CONFIG_RV_MON_WIP
61DEFINE_EVENT(event_da_monitor, event_wip,
62 TP_PROTO(char *state, char *event, char *next_state, bool final_state),
63 TP_ARGS(state, event, next_state, final_state));
64
65DEFINE_EVENT(error_da_monitor, error_wip,
66 TP_PROTO(char *state, char *event),
67 TP_ARGS(state, event));
68#endif /* CONFIG_RV_MON_WIP */
69#endif /* CONFIG_DA_MON_EVENTS_IMPLICIT */
70
71#ifdef CONFIG_DA_MON_EVENTS_ID
72DECLARE_EVENT_CLASS(event_da_monitor_id,
73
74 TP_PROTO(int id, char *state, char *event, char *next_state, bool final_state),
75
76 TP_ARGS(id, state, event, next_state, final_state),
77
78 TP_STRUCT__entry(
79 __field( int, id )
80 __array( char, state, MAX_DA_NAME_LEN )
81 __array( char, event, MAX_DA_NAME_LEN )
82 __array( char, next_state, MAX_DA_NAME_LEN )
83 __field( bool, final_state )
84 ),
85
86 TP_fast_assign(
87 memcpy(__entry->state, state, MAX_DA_NAME_LEN);
88 memcpy(__entry->event, event, MAX_DA_NAME_LEN);
89 memcpy(__entry->next_state, next_state, MAX_DA_NAME_LEN);
90 __entry->id = id;
91 __entry->final_state = final_state;
92 ),
93
94 TP_printk("%d: %s x %s -> %s %s",
95 __entry->id,
96 __entry->state,
97 __entry->event,
98 __entry->next_state,
99 __entry->final_state ? "(final)" : "")
100);
101
102DECLARE_EVENT_CLASS(error_da_monitor_id,
103
104 TP_PROTO(int id, char *state, char *event),
105
106 TP_ARGS(id, state, event),
107
108 TP_STRUCT__entry(
109 __field( int, id )
110 __array( char, state, MAX_DA_NAME_LEN )
111 __array( char, event, MAX_DA_NAME_LEN )
112 ),
113
114 TP_fast_assign(
115 memcpy(__entry->state, state, MAX_DA_NAME_LEN);
116 memcpy(__entry->event, event, MAX_DA_NAME_LEN);
117 __entry->id = id;
118 ),
119
120 TP_printk("%d: event %s not expected in the state %s",
121 __entry->id,
122 __entry->event,
123 __entry->state)
124);
125
126#ifdef CONFIG_RV_MON_WWNR
127/* id is the pid of the task */
128DEFINE_EVENT(event_da_monitor_id, event_wwnr,
129 TP_PROTO(int id, char *state, char *event, char *next_state, bool final_state),
130 TP_ARGS(id, state, event, next_state, final_state));
131
132DEFINE_EVENT(error_da_monitor_id, error_wwnr,
133 TP_PROTO(int id, char *state, char *event),
134 TP_ARGS(id, state, event));
135#endif /* CONFIG_RV_MON_WWNR */
136
137#endif /* CONFIG_DA_MON_EVENTS_ID */
138#endif /* _TRACE_RV_H */
139
140/* This part ust be outside protection */
141#undef TRACE_INCLUDE_PATH
142#include <trace/define_trace.h>
143

Warning: This file is not a C or C++ file. It does not have highlighting.

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