linux/net/mac80211/trace_msg.h
<<
>>
Prefs
   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
  60