123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- /* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */
- /*
- * Copyright(c) 2018 Intel Corporation.
- *
- */
- #if !defined(__HFI1_TRACE_IOWAIT_H) || defined(TRACE_HEADER_MULTI_READ)
- #define __HFI1_TRACE_IOWAIT_H
- #include <linux/tracepoint.h>
- #include "iowait.h"
- #include "verbs.h"
- #undef TRACE_SYSTEM
- #define TRACE_SYSTEM hfi1_iowait
- DECLARE_EVENT_CLASS(hfi1_iowait_template,
- TP_PROTO(struct iowait *wait, u32 flag),
- TP_ARGS(wait, flag),
- TP_STRUCT__entry(/* entry */
- __field(unsigned long, addr)
- __field(unsigned long, flags)
- __field(u32, flag)
- __field(u32, qpn)
- ),
- TP_fast_assign(/* assign */
- __entry->addr = (unsigned long)wait;
- __entry->flags = wait->flags;
- __entry->flag = (1 << flag);
- __entry->qpn = iowait_to_qp(wait)->ibqp.qp_num;
- ),
- TP_printk(/* print */
- "iowait 0x%lx qp %u flags 0x%lx flag 0x%x",
- __entry->addr,
- __entry->qpn,
- __entry->flags,
- __entry->flag
- )
- );
- DEFINE_EVENT(hfi1_iowait_template, hfi1_iowait_set,
- TP_PROTO(struct iowait *wait, u32 flag),
- TP_ARGS(wait, flag));
- DEFINE_EVENT(hfi1_iowait_template, hfi1_iowait_clear,
- TP_PROTO(struct iowait *wait, u32 flag),
- TP_ARGS(wait, flag));
- #endif /* __HFI1_TRACE_IOWAIT_H */
- #undef TRACE_INCLUDE_PATH
- #undef TRACE_INCLUDE_FILE
- #define TRACE_INCLUDE_PATH .
- #define TRACE_INCLUDE_FILE trace_iowait
- #include <trace/define_trace.h>
|