Merge remote-tracking branches 'asoc/topic/ac97', 'asoc/topic/ac97-mfd', 'asoc/topic...
[sfrench/cifs-2.6.git] / net / mac80211 / trace_msg.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifdef CONFIG_MAC80211_MESSAGE_TRACING
3
4 #if !defined(__MAC80211_MSG_DRIVER_TRACE) || defined(TRACE_HEADER_MULTI_READ)
5 #define __MAC80211_MSG_DRIVER_TRACE
6
7 #include <linux/tracepoint.h>
8 #include <net/mac80211.h>
9 #include "ieee80211_i.h"
10
11 #undef TRACE_SYSTEM
12 #define TRACE_SYSTEM mac80211_msg
13
14 #define MAX_MSG_LEN     100
15
16 DECLARE_EVENT_CLASS(mac80211_msg_event,
17         TP_PROTO(struct va_format *vaf),
18
19         TP_ARGS(vaf),
20
21         TP_STRUCT__entry(
22                 __dynamic_array(char, msg, MAX_MSG_LEN)
23         ),
24
25         TP_fast_assign(
26                 WARN_ON_ONCE(vsnprintf(__get_dynamic_array(msg),
27                                        MAX_MSG_LEN, vaf->fmt,
28                                        *vaf->va) >= MAX_MSG_LEN);
29         ),
30
31         TP_printk("%s", __get_str(msg))
32 );
33
34 DEFINE_EVENT(mac80211_msg_event, mac80211_info,
35         TP_PROTO(struct va_format *vaf),
36         TP_ARGS(vaf)
37 );
38 DEFINE_EVENT(mac80211_msg_event, mac80211_dbg,
39         TP_PROTO(struct va_format *vaf),
40         TP_ARGS(vaf)
41 );
42 DEFINE_EVENT(mac80211_msg_event, mac80211_err,
43         TP_PROTO(struct va_format *vaf),
44         TP_ARGS(vaf)
45 );
46 #endif /* !__MAC80211_MSG_DRIVER_TRACE || TRACE_HEADER_MULTI_READ */
47
48 #undef TRACE_INCLUDE_PATH
49 #define TRACE_INCLUDE_PATH .
50 #undef TRACE_INCLUDE_FILE
51 #define TRACE_INCLUDE_FILE trace_msg
52 #include <trace/define_trace.h>
53
54 #endif