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