trace_msg.h (1291B)
1/* SPDX-License-Identifier: GPL-2.0 */ 2/* 3 * Portions of this file 4 * Copyright (C) 2019 Intel Corporation 5 */ 6 7#ifdef CONFIG_MAC80211_MESSAGE_TRACING 8 9#if !defined(__MAC80211_MSG_DRIVER_TRACE) || defined(TRACE_HEADER_MULTI_READ) 10#define __MAC80211_MSG_DRIVER_TRACE 11 12#include <linux/tracepoint.h> 13#include <net/mac80211.h> 14#include "ieee80211_i.h" 15 16#undef TRACE_SYSTEM 17#define TRACE_SYSTEM mac80211_msg 18 19#define MAX_MSG_LEN 120 20 21DECLARE_EVENT_CLASS(mac80211_msg_event, 22 TP_PROTO(struct va_format *vaf), 23 24 TP_ARGS(vaf), 25 26 TP_STRUCT__entry( 27 __dynamic_array(char, msg, MAX_MSG_LEN) 28 ), 29 30 TP_fast_assign( 31 WARN_ON_ONCE(vsnprintf(__get_dynamic_array(msg), 32 MAX_MSG_LEN, vaf->fmt, 33 *vaf->va) >= MAX_MSG_LEN); 34 ), 35 36 TP_printk("%s", __get_str(msg)) 37); 38 39DEFINE_EVENT(mac80211_msg_event, mac80211_info, 40 TP_PROTO(struct va_format *vaf), 41 TP_ARGS(vaf) 42); 43DEFINE_EVENT(mac80211_msg_event, mac80211_dbg, 44 TP_PROTO(struct va_format *vaf), 45 TP_ARGS(vaf) 46); 47DEFINE_EVENT(mac80211_msg_event, mac80211_err, 48 TP_PROTO(struct va_format *vaf), 49 TP_ARGS(vaf) 50); 51#endif /* !__MAC80211_MSG_DRIVER_TRACE || TRACE_HEADER_MULTI_READ */ 52 53#undef TRACE_INCLUDE_PATH 54#define TRACE_INCLUDE_PATH . 55#undef TRACE_INCLUDE_FILE 56#define TRACE_INCLUDE_FILE trace_msg 57#include <trace/define_trace.h> 58 59#endif