cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

trace_qp.h (2164B)


      1/* SPDX-License-Identifier: GPL-2.0 or BSD-3-Clause */
      2/*
      3 * Copyright(c) 2016 Intel Corporation.
      4 */
      5#if !defined(__RVT_TRACE_QP_H) || defined(TRACE_HEADER_MULTI_READ)
      6#define __RVT_TRACE_QP_H
      7
      8#include <linux/tracepoint.h>
      9#include <linux/trace_seq.h>
     10
     11#include <rdma/ib_verbs.h>
     12#include <rdma/rdmavt_qp.h>
     13
     14#undef TRACE_SYSTEM
     15#define TRACE_SYSTEM rvt_qp
     16
     17DECLARE_EVENT_CLASS(rvt_qphash_template,
     18	TP_PROTO(struct rvt_qp *qp, u32 bucket),
     19	TP_ARGS(qp, bucket),
     20	TP_STRUCT__entry(
     21		RDI_DEV_ENTRY(ib_to_rvt(qp->ibqp.device))
     22		__field(u32, qpn)
     23		__field(u32, bucket)
     24	),
     25	TP_fast_assign(
     26		RDI_DEV_ASSIGN(ib_to_rvt(qp->ibqp.device));
     27		__entry->qpn = qp->ibqp.qp_num;
     28		__entry->bucket = bucket;
     29	),
     30	TP_printk(
     31		"[%s] qpn 0x%x bucket %u",
     32		__get_str(dev),
     33		__entry->qpn,
     34		__entry->bucket
     35	)
     36);
     37
     38DEFINE_EVENT(rvt_qphash_template, rvt_qpinsert,
     39	TP_PROTO(struct rvt_qp *qp, u32 bucket),
     40	TP_ARGS(qp, bucket));
     41
     42DEFINE_EVENT(rvt_qphash_template, rvt_qpremove,
     43	TP_PROTO(struct rvt_qp *qp, u32 bucket),
     44	TP_ARGS(qp, bucket));
     45
     46DECLARE_EVENT_CLASS(
     47	rvt_rnrnak_template,
     48	TP_PROTO(struct rvt_qp *qp, u32 to),
     49	TP_ARGS(qp, to),
     50	TP_STRUCT__entry(
     51		RDI_DEV_ENTRY(ib_to_rvt(qp->ibqp.device))
     52		__field(u32, qpn)
     53		__field(void *, hrtimer)
     54		__field(u32, s_flags)
     55		__field(u32, to)
     56	),
     57	TP_fast_assign(
     58		RDI_DEV_ASSIGN(ib_to_rvt(qp->ibqp.device));
     59		__entry->qpn = qp->ibqp.qp_num;
     60		__entry->hrtimer = &qp->s_rnr_timer;
     61		__entry->s_flags = qp->s_flags;
     62		__entry->to = to;
     63	),
     64	TP_printk(
     65		"[%s] qpn 0x%x hrtimer 0x%p s_flags 0x%x timeout %u us",
     66		__get_str(dev),
     67		__entry->qpn,
     68		__entry->hrtimer,
     69		__entry->s_flags,
     70		__entry->to
     71	)
     72);
     73
     74DEFINE_EVENT(
     75	rvt_rnrnak_template, rvt_rnrnak_add,
     76	TP_PROTO(struct rvt_qp *qp, u32 to),
     77	TP_ARGS(qp, to));
     78
     79DEFINE_EVENT(
     80	rvt_rnrnak_template, rvt_rnrnak_timeout,
     81	TP_PROTO(struct rvt_qp *qp, u32 to),
     82	TP_ARGS(qp, to));
     83
     84DEFINE_EVENT(
     85	rvt_rnrnak_template, rvt_rnrnak_stop,
     86	TP_PROTO(struct rvt_qp *qp, u32 to),
     87	TP_ARGS(qp, to));
     88
     89#endif /* __RVT_TRACE_QP_H */
     90
     91#undef TRACE_INCLUDE_PATH
     92#undef TRACE_INCLUDE_FILE
     93#define TRACE_INCLUDE_PATH .
     94#define TRACE_INCLUDE_FILE trace_qp
     95#include <trace/define_trace.h>
     96