1/* SPDX-License-Identifier: GPL-2.0 */
2#if !defined(_TRACE_QLA_H_) || defined(TRACE_HEADER_MULTI_READ)
3#define _TRACE_QLA_H_
4
5#include <linux/tracepoint.h>
6
7#undef TRACE_SYSTEM
8#define TRACE_SYSTEM qla
9
10#define QLA_MSG_MAX 256
11
12#pragma GCC diagnostic push
13#ifndef __clang__
14#pragma GCC diagnostic ignored "-Wsuggest-attribute=format"
15#endif
16
17DECLARE_EVENT_CLASS(qla_log_event,
18	TP_PROTO(const char *buf,
19		struct va_format *vaf),
20
21	TP_ARGS(buf, vaf),
22
23	TP_STRUCT__entry(
24		__string(buf, buf)
25		__vstring(msg, vaf->fmt, vaf->va)
26	),
27	TP_fast_assign(
28		__assign_str(buf, buf);
29		__assign_vstr(msg, vaf->fmt, vaf->va);
30	),
31
32	TP_printk("%s %s", __get_str(buf), __get_str(msg))
33);
34
35#pragma GCC diagnostic pop
36
37DEFINE_EVENT(qla_log_event, ql_dbg_log,
38	TP_PROTO(const char *buf, struct va_format *vaf),
39	TP_ARGS(buf, vaf)
40);
41
42#endif /* _TRACE_QLA_H */
43
44#define TRACE_INCLUDE_FILE qla
45
46#include <trace/define_trace.h>
47