18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Copyright(c) 2018 Intel Corporation. 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci */ 68c2ecf20Sopenharmony_ci#if !defined(__HFI1_TRACE_TID_H) || defined(TRACE_HEADER_MULTI_READ) 78c2ecf20Sopenharmony_ci#define __HFI1_TRACE_TID_H 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ci#include <linux/tracepoint.h> 108c2ecf20Sopenharmony_ci#include <linux/trace_seq.h> 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ci#include "hfi.h" 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_ci#define tidtype_name(type) { PT_##type, #type } 158c2ecf20Sopenharmony_ci#define show_tidtype(type) \ 168c2ecf20Sopenharmony_ci__print_symbolic(type, \ 178c2ecf20Sopenharmony_ci tidtype_name(EXPECTED), \ 188c2ecf20Sopenharmony_ci tidtype_name(EAGER), \ 198c2ecf20Sopenharmony_ci tidtype_name(INVALID)) \ 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ci#undef TRACE_SYSTEM 228c2ecf20Sopenharmony_ci#define TRACE_SYSTEM hfi1_tid 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ciu8 hfi1_trace_get_tid_ctrl(u32 ent); 258c2ecf20Sopenharmony_ciu16 hfi1_trace_get_tid_len(u32 ent); 268c2ecf20Sopenharmony_ciu16 hfi1_trace_get_tid_idx(u32 ent); 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci#define OPFN_PARAM_PRN "[%s] qpn 0x%x %s OPFN: qp 0x%x, max read %u, " \ 298c2ecf20Sopenharmony_ci "max write %u, max length %u, jkey 0x%x timeout %u " \ 308c2ecf20Sopenharmony_ci "urg %u" 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci#define TID_FLOW_PRN "[%s] qpn 0x%x flow %d: idx %d resp_ib_psn 0x%x " \ 338c2ecf20Sopenharmony_ci "generation 0x%x fpsn 0x%x-%x r_next_psn 0x%x " \ 348c2ecf20Sopenharmony_ci "ib_psn 0x%x-%x npagesets %u tnode_cnt %u " \ 358c2ecf20Sopenharmony_ci "tidcnt %u tid_idx %u tid_offset %u length %u sent %u" 368c2ecf20Sopenharmony_ci 378c2ecf20Sopenharmony_ci#define TID_NODE_PRN "[%s] qpn 0x%x %s idx %u grp base 0x%x map 0x%x " \ 388c2ecf20Sopenharmony_ci "used %u cnt %u" 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_ci#define RSP_INFO_PRN "[%s] qpn 0x%x state 0x%x s_state 0x%x psn 0x%x " \ 418c2ecf20Sopenharmony_ci "r_psn 0x%x r_state 0x%x r_flags 0x%x " \ 428c2ecf20Sopenharmony_ci "r_head_ack_queue %u s_tail_ack_queue %u " \ 438c2ecf20Sopenharmony_ci "s_acked_ack_queue %u s_ack_state 0x%x " \ 448c2ecf20Sopenharmony_ci "s_nak_state 0x%x s_flags 0x%x ps_flags 0x%x " \ 458c2ecf20Sopenharmony_ci "iow_flags 0x%lx" 468c2ecf20Sopenharmony_ci 478c2ecf20Sopenharmony_ci#define SENDER_INFO_PRN "[%s] qpn 0x%x state 0x%x s_cur %u s_tail %u " \ 488c2ecf20Sopenharmony_ci "s_head %u s_acked %u s_last %u s_psn 0x%x " \ 498c2ecf20Sopenharmony_ci "s_last_psn 0x%x s_flags 0x%x ps_flags 0x%x " \ 508c2ecf20Sopenharmony_ci "iow_flags 0x%lx s_state 0x%x s_num_rd %u s_retry %u" 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci#define TID_READ_SENDER_PRN "[%s] qpn 0x%x newreq %u tid_r_reqs %u " \ 538c2ecf20Sopenharmony_ci "tid_r_comp %u pending_tid_r_segs %u " \ 548c2ecf20Sopenharmony_ci "s_flags 0x%x ps_flags 0x%x iow_flags 0x%lx " \ 558c2ecf20Sopenharmony_ci "s_state 0x%x hw_flow_index %u generation 0x%x " \ 568c2ecf20Sopenharmony_ci "fpsn 0x%x" 578c2ecf20Sopenharmony_ci 588c2ecf20Sopenharmony_ci#define TID_REQ_PRN "[%s] qpn 0x%x newreq %u opcode 0x%x psn 0x%x lpsn 0x%x " \ 598c2ecf20Sopenharmony_ci "cur_seg %u comp_seg %u ack_seg %u alloc_seg %u " \ 608c2ecf20Sopenharmony_ci "total_segs %u setup_head %u clear_tail %u flow_idx %u " \ 618c2ecf20Sopenharmony_ci "acked_tail %u state %u r_ack_psn 0x%x r_flow_psn 0x%x " \ 628c2ecf20Sopenharmony_ci "r_last_ackd 0x%x s_next_psn 0x%x" 638c2ecf20Sopenharmony_ci 648c2ecf20Sopenharmony_ci#define RCV_ERR_PRN "[%s] qpn 0x%x s_flags 0x%x state 0x%x " \ 658c2ecf20Sopenharmony_ci "s_acked_ack_queue %u s_tail_ack_queue %u " \ 668c2ecf20Sopenharmony_ci "r_head_ack_queue %u opcode 0x%x psn 0x%x r_psn 0x%x " \ 678c2ecf20Sopenharmony_ci " diff %d" 688c2ecf20Sopenharmony_ci 698c2ecf20Sopenharmony_ci#define TID_WRITE_RSPDR_PRN "[%s] qpn 0x%x r_tid_head %u r_tid_tail %u " \ 708c2ecf20Sopenharmony_ci "r_tid_ack %u r_tid_alloc %u alloc_w_segs %u " \ 718c2ecf20Sopenharmony_ci "pending_tid_w_segs %u sync_pt %s " \ 728c2ecf20Sopenharmony_ci "ps_nak_psn 0x%x ps_nak_state 0x%x " \ 738c2ecf20Sopenharmony_ci "prnr_nak_state 0x%x hw_flow_index %u generation "\ 748c2ecf20Sopenharmony_ci "0x%x fpsn 0x%x resync %s" \ 758c2ecf20Sopenharmony_ci "r_next_psn_kdeth 0x%x" 768c2ecf20Sopenharmony_ci 778c2ecf20Sopenharmony_ci#define TID_WRITE_SENDER_PRN "[%s] qpn 0x%x newreq %u s_tid_cur %u " \ 788c2ecf20Sopenharmony_ci "s_tid_tail %u s_tid_head %u " \ 798c2ecf20Sopenharmony_ci "pending_tid_w_resp %u n_requests %u " \ 808c2ecf20Sopenharmony_ci "n_tid_requests %u s_flags 0x%x ps_flags 0x%x "\ 818c2ecf20Sopenharmony_ci "iow_flags 0x%lx s_state 0x%x s_retry %u" 828c2ecf20Sopenharmony_ci 838c2ecf20Sopenharmony_ci#define KDETH_EFLAGS_ERR_PRN "[%s] qpn 0x%x TID ERR: RcvType 0x%x " \ 848c2ecf20Sopenharmony_ci "RcvTypeError 0x%x PSN 0x%x" 858c2ecf20Sopenharmony_ci 868c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* class */ 878c2ecf20Sopenharmony_ci hfi1_exp_tid_reg_unreg, 888c2ecf20Sopenharmony_ci TP_PROTO(unsigned int ctxt, u16 subctxt, u32 rarr, u32 npages, 898c2ecf20Sopenharmony_ci unsigned long va, unsigned long pa, dma_addr_t dma), 908c2ecf20Sopenharmony_ci TP_ARGS(ctxt, subctxt, rarr, npages, va, pa, dma), 918c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 928c2ecf20Sopenharmony_ci __field(unsigned int, ctxt) 938c2ecf20Sopenharmony_ci __field(u16, subctxt) 948c2ecf20Sopenharmony_ci __field(u32, rarr) 958c2ecf20Sopenharmony_ci __field(u32, npages) 968c2ecf20Sopenharmony_ci __field(unsigned long, va) 978c2ecf20Sopenharmony_ci __field(unsigned long, pa) 988c2ecf20Sopenharmony_ci __field(dma_addr_t, dma) 998c2ecf20Sopenharmony_ci ), 1008c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 1018c2ecf20Sopenharmony_ci __entry->ctxt = ctxt; 1028c2ecf20Sopenharmony_ci __entry->subctxt = subctxt; 1038c2ecf20Sopenharmony_ci __entry->rarr = rarr; 1048c2ecf20Sopenharmony_ci __entry->npages = npages; 1058c2ecf20Sopenharmony_ci __entry->va = va; 1068c2ecf20Sopenharmony_ci __entry->pa = pa; 1078c2ecf20Sopenharmony_ci __entry->dma = dma; 1088c2ecf20Sopenharmony_ci ), 1098c2ecf20Sopenharmony_ci TP_printk("[%u:%u] entry:%u, %u pages @ 0x%lx, va:0x%lx dma:0x%llx", 1108c2ecf20Sopenharmony_ci __entry->ctxt, 1118c2ecf20Sopenharmony_ci __entry->subctxt, 1128c2ecf20Sopenharmony_ci __entry->rarr, 1138c2ecf20Sopenharmony_ci __entry->npages, 1148c2ecf20Sopenharmony_ci __entry->pa, 1158c2ecf20Sopenharmony_ci __entry->va, 1168c2ecf20Sopenharmony_ci __entry->dma 1178c2ecf20Sopenharmony_ci ) 1188c2ecf20Sopenharmony_ci); 1198c2ecf20Sopenharmony_ci 1208c2ecf20Sopenharmony_ciDEFINE_EVENT(/* exp_tid_unreg */ 1218c2ecf20Sopenharmony_ci hfi1_exp_tid_reg_unreg, hfi1_exp_tid_unreg, 1228c2ecf20Sopenharmony_ci TP_PROTO(unsigned int ctxt, u16 subctxt, u32 rarr, u32 npages, 1238c2ecf20Sopenharmony_ci unsigned long va, unsigned long pa, dma_addr_t dma), 1248c2ecf20Sopenharmony_ci TP_ARGS(ctxt, subctxt, rarr, npages, va, pa, dma) 1258c2ecf20Sopenharmony_ci); 1268c2ecf20Sopenharmony_ci 1278c2ecf20Sopenharmony_ciDEFINE_EVENT(/* exp_tid_reg */ 1288c2ecf20Sopenharmony_ci hfi1_exp_tid_reg_unreg, hfi1_exp_tid_reg, 1298c2ecf20Sopenharmony_ci TP_PROTO(unsigned int ctxt, u16 subctxt, u32 rarr, u32 npages, 1308c2ecf20Sopenharmony_ci unsigned long va, unsigned long pa, dma_addr_t dma), 1318c2ecf20Sopenharmony_ci TP_ARGS(ctxt, subctxt, rarr, npages, va, pa, dma) 1328c2ecf20Sopenharmony_ci); 1338c2ecf20Sopenharmony_ci 1348c2ecf20Sopenharmony_ciTRACE_EVENT(/* put_tid */ 1358c2ecf20Sopenharmony_ci hfi1_put_tid, 1368c2ecf20Sopenharmony_ci TP_PROTO(struct hfi1_devdata *dd, 1378c2ecf20Sopenharmony_ci u32 index, u32 type, unsigned long pa, u16 order), 1388c2ecf20Sopenharmony_ci TP_ARGS(dd, index, type, pa, order), 1398c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 1408c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd) 1418c2ecf20Sopenharmony_ci __field(unsigned long, pa) 1428c2ecf20Sopenharmony_ci __field(u32, index) 1438c2ecf20Sopenharmony_ci __field(u32, type) 1448c2ecf20Sopenharmony_ci __field(u16, order) 1458c2ecf20Sopenharmony_ci ), 1468c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 1478c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd); 1488c2ecf20Sopenharmony_ci __entry->pa = pa; 1498c2ecf20Sopenharmony_ci __entry->index = index; 1508c2ecf20Sopenharmony_ci __entry->type = type; 1518c2ecf20Sopenharmony_ci __entry->order = order; 1528c2ecf20Sopenharmony_ci ), 1538c2ecf20Sopenharmony_ci TP_printk("[%s] type %s pa %lx index %u order %u", 1548c2ecf20Sopenharmony_ci __get_str(dev), 1558c2ecf20Sopenharmony_ci show_tidtype(__entry->type), 1568c2ecf20Sopenharmony_ci __entry->pa, 1578c2ecf20Sopenharmony_ci __entry->index, 1588c2ecf20Sopenharmony_ci __entry->order 1598c2ecf20Sopenharmony_ci ) 1608c2ecf20Sopenharmony_ci); 1618c2ecf20Sopenharmony_ci 1628c2ecf20Sopenharmony_ciTRACE_EVENT(/* exp_tid_inval */ 1638c2ecf20Sopenharmony_ci hfi1_exp_tid_inval, 1648c2ecf20Sopenharmony_ci TP_PROTO(unsigned int ctxt, u16 subctxt, unsigned long va, u32 rarr, 1658c2ecf20Sopenharmony_ci u32 npages, dma_addr_t dma), 1668c2ecf20Sopenharmony_ci TP_ARGS(ctxt, subctxt, va, rarr, npages, dma), 1678c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 1688c2ecf20Sopenharmony_ci __field(unsigned int, ctxt) 1698c2ecf20Sopenharmony_ci __field(u16, subctxt) 1708c2ecf20Sopenharmony_ci __field(unsigned long, va) 1718c2ecf20Sopenharmony_ci __field(u32, rarr) 1728c2ecf20Sopenharmony_ci __field(u32, npages) 1738c2ecf20Sopenharmony_ci __field(dma_addr_t, dma) 1748c2ecf20Sopenharmony_ci ), 1758c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 1768c2ecf20Sopenharmony_ci __entry->ctxt = ctxt; 1778c2ecf20Sopenharmony_ci __entry->subctxt = subctxt; 1788c2ecf20Sopenharmony_ci __entry->va = va; 1798c2ecf20Sopenharmony_ci __entry->rarr = rarr; 1808c2ecf20Sopenharmony_ci __entry->npages = npages; 1818c2ecf20Sopenharmony_ci __entry->dma = dma; 1828c2ecf20Sopenharmony_ci ), 1838c2ecf20Sopenharmony_ci TP_printk("[%u:%u] entry:%u, %u pages @ 0x%lx dma: 0x%llx", 1848c2ecf20Sopenharmony_ci __entry->ctxt, 1858c2ecf20Sopenharmony_ci __entry->subctxt, 1868c2ecf20Sopenharmony_ci __entry->rarr, 1878c2ecf20Sopenharmony_ci __entry->npages, 1888c2ecf20Sopenharmony_ci __entry->va, 1898c2ecf20Sopenharmony_ci __entry->dma 1908c2ecf20Sopenharmony_ci ) 1918c2ecf20Sopenharmony_ci); 1928c2ecf20Sopenharmony_ci 1938c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* opfn_state */ 1948c2ecf20Sopenharmony_ci hfi1_opfn_state_template, 1958c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 1968c2ecf20Sopenharmony_ci TP_ARGS(qp), 1978c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 1988c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 1998c2ecf20Sopenharmony_ci __field(u32, qpn) 2008c2ecf20Sopenharmony_ci __field(u16, requested) 2018c2ecf20Sopenharmony_ci __field(u16, completed) 2028c2ecf20Sopenharmony_ci __field(u8, curr) 2038c2ecf20Sopenharmony_ci ), 2048c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 2058c2ecf20Sopenharmony_ci struct hfi1_qp_priv *priv = qp->priv; 2068c2ecf20Sopenharmony_ci 2078c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 2088c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 2098c2ecf20Sopenharmony_ci __entry->requested = priv->opfn.requested; 2108c2ecf20Sopenharmony_ci __entry->completed = priv->opfn.completed; 2118c2ecf20Sopenharmony_ci __entry->curr = priv->opfn.curr; 2128c2ecf20Sopenharmony_ci ), 2138c2ecf20Sopenharmony_ci TP_printk(/* print */ 2148c2ecf20Sopenharmony_ci "[%s] qpn 0x%x requested 0x%x completed 0x%x curr 0x%x", 2158c2ecf20Sopenharmony_ci __get_str(dev), 2168c2ecf20Sopenharmony_ci __entry->qpn, 2178c2ecf20Sopenharmony_ci __entry->requested, 2188c2ecf20Sopenharmony_ci __entry->completed, 2198c2ecf20Sopenharmony_ci __entry->curr 2208c2ecf20Sopenharmony_ci ) 2218c2ecf20Sopenharmony_ci); 2228c2ecf20Sopenharmony_ci 2238c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 2248c2ecf20Sopenharmony_ci hfi1_opfn_state_template, hfi1_opfn_state_conn_request, 2258c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 2268c2ecf20Sopenharmony_ci TP_ARGS(qp) 2278c2ecf20Sopenharmony_ci); 2288c2ecf20Sopenharmony_ci 2298c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 2308c2ecf20Sopenharmony_ci hfi1_opfn_state_template, hfi1_opfn_state_sched_conn_request, 2318c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 2328c2ecf20Sopenharmony_ci TP_ARGS(qp) 2338c2ecf20Sopenharmony_ci); 2348c2ecf20Sopenharmony_ci 2358c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 2368c2ecf20Sopenharmony_ci hfi1_opfn_state_template, hfi1_opfn_state_conn_response, 2378c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 2388c2ecf20Sopenharmony_ci TP_ARGS(qp) 2398c2ecf20Sopenharmony_ci); 2408c2ecf20Sopenharmony_ci 2418c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 2428c2ecf20Sopenharmony_ci hfi1_opfn_state_template, hfi1_opfn_state_conn_reply, 2438c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 2448c2ecf20Sopenharmony_ci TP_ARGS(qp) 2458c2ecf20Sopenharmony_ci); 2468c2ecf20Sopenharmony_ci 2478c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 2488c2ecf20Sopenharmony_ci hfi1_opfn_state_template, hfi1_opfn_state_conn_error, 2498c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 2508c2ecf20Sopenharmony_ci TP_ARGS(qp) 2518c2ecf20Sopenharmony_ci); 2528c2ecf20Sopenharmony_ci 2538c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* opfn_data */ 2548c2ecf20Sopenharmony_ci hfi1_opfn_data_template, 2558c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u8 capcode, u64 data), 2568c2ecf20Sopenharmony_ci TP_ARGS(qp, capcode, data), 2578c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 2588c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 2598c2ecf20Sopenharmony_ci __field(u32, qpn) 2608c2ecf20Sopenharmony_ci __field(u32, state) 2618c2ecf20Sopenharmony_ci __field(u8, capcode) 2628c2ecf20Sopenharmony_ci __field(u64, data) 2638c2ecf20Sopenharmony_ci ), 2648c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 2658c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 2668c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 2678c2ecf20Sopenharmony_ci __entry->state = qp->state; 2688c2ecf20Sopenharmony_ci __entry->capcode = capcode; 2698c2ecf20Sopenharmony_ci __entry->data = data; 2708c2ecf20Sopenharmony_ci ), 2718c2ecf20Sopenharmony_ci TP_printk(/* printk */ 2728c2ecf20Sopenharmony_ci "[%s] qpn 0x%x (state 0x%x) Capcode %u data 0x%llx", 2738c2ecf20Sopenharmony_ci __get_str(dev), 2748c2ecf20Sopenharmony_ci __entry->qpn, 2758c2ecf20Sopenharmony_ci __entry->state, 2768c2ecf20Sopenharmony_ci __entry->capcode, 2778c2ecf20Sopenharmony_ci __entry->data 2788c2ecf20Sopenharmony_ci ) 2798c2ecf20Sopenharmony_ci); 2808c2ecf20Sopenharmony_ci 2818c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 2828c2ecf20Sopenharmony_ci hfi1_opfn_data_template, hfi1_opfn_data_conn_request, 2838c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u8 capcode, u64 data), 2848c2ecf20Sopenharmony_ci TP_ARGS(qp, capcode, data) 2858c2ecf20Sopenharmony_ci); 2868c2ecf20Sopenharmony_ci 2878c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 2888c2ecf20Sopenharmony_ci hfi1_opfn_data_template, hfi1_opfn_data_conn_response, 2898c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u8 capcode, u64 data), 2908c2ecf20Sopenharmony_ci TP_ARGS(qp, capcode, data) 2918c2ecf20Sopenharmony_ci); 2928c2ecf20Sopenharmony_ci 2938c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 2948c2ecf20Sopenharmony_ci hfi1_opfn_data_template, hfi1_opfn_data_conn_reply, 2958c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u8 capcode, u64 data), 2968c2ecf20Sopenharmony_ci TP_ARGS(qp, capcode, data) 2978c2ecf20Sopenharmony_ci); 2988c2ecf20Sopenharmony_ci 2998c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* opfn_param */ 3008c2ecf20Sopenharmony_ci hfi1_opfn_param_template, 3018c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char remote, 3028c2ecf20Sopenharmony_ci struct tid_rdma_params *param), 3038c2ecf20Sopenharmony_ci TP_ARGS(qp, remote, param), 3048c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 3058c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 3068c2ecf20Sopenharmony_ci __field(u32, qpn) 3078c2ecf20Sopenharmony_ci __field(char, remote) 3088c2ecf20Sopenharmony_ci __field(u32, param_qp) 3098c2ecf20Sopenharmony_ci __field(u32, max_len) 3108c2ecf20Sopenharmony_ci __field(u16, jkey) 3118c2ecf20Sopenharmony_ci __field(u8, max_read) 3128c2ecf20Sopenharmony_ci __field(u8, max_write) 3138c2ecf20Sopenharmony_ci __field(u8, timeout) 3148c2ecf20Sopenharmony_ci __field(u8, urg) 3158c2ecf20Sopenharmony_ci ), 3168c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 3178c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 3188c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 3198c2ecf20Sopenharmony_ci __entry->remote = remote; 3208c2ecf20Sopenharmony_ci __entry->param_qp = param->qp; 3218c2ecf20Sopenharmony_ci __entry->max_len = param->max_len; 3228c2ecf20Sopenharmony_ci __entry->jkey = param->jkey; 3238c2ecf20Sopenharmony_ci __entry->max_read = param->max_read; 3248c2ecf20Sopenharmony_ci __entry->max_write = param->max_write; 3258c2ecf20Sopenharmony_ci __entry->timeout = param->timeout; 3268c2ecf20Sopenharmony_ci __entry->urg = param->urg; 3278c2ecf20Sopenharmony_ci ), 3288c2ecf20Sopenharmony_ci TP_printk(/* print */ 3298c2ecf20Sopenharmony_ci OPFN_PARAM_PRN, 3308c2ecf20Sopenharmony_ci __get_str(dev), 3318c2ecf20Sopenharmony_ci __entry->qpn, 3328c2ecf20Sopenharmony_ci __entry->remote ? "remote" : "local", 3338c2ecf20Sopenharmony_ci __entry->param_qp, 3348c2ecf20Sopenharmony_ci __entry->max_read, 3358c2ecf20Sopenharmony_ci __entry->max_write, 3368c2ecf20Sopenharmony_ci __entry->max_len, 3378c2ecf20Sopenharmony_ci __entry->jkey, 3388c2ecf20Sopenharmony_ci __entry->timeout, 3398c2ecf20Sopenharmony_ci __entry->urg 3408c2ecf20Sopenharmony_ci ) 3418c2ecf20Sopenharmony_ci); 3428c2ecf20Sopenharmony_ci 3438c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 3448c2ecf20Sopenharmony_ci hfi1_opfn_param_template, hfi1_opfn_param, 3458c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char remote, 3468c2ecf20Sopenharmony_ci struct tid_rdma_params *param), 3478c2ecf20Sopenharmony_ci TP_ARGS(qp, remote, param) 3488c2ecf20Sopenharmony_ci); 3498c2ecf20Sopenharmony_ci 3508c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* msg */ 3518c2ecf20Sopenharmony_ci hfi1_msg_template, 3528c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, const char *msg, u64 more), 3538c2ecf20Sopenharmony_ci TP_ARGS(qp, msg, more), 3548c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 3558c2ecf20Sopenharmony_ci __field(u32, qpn) 3568c2ecf20Sopenharmony_ci __string(msg, msg) 3578c2ecf20Sopenharmony_ci __field(u64, more) 3588c2ecf20Sopenharmony_ci ), 3598c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 3608c2ecf20Sopenharmony_ci __entry->qpn = qp ? qp->ibqp.qp_num : 0; 3618c2ecf20Sopenharmony_ci __assign_str(msg, msg); 3628c2ecf20Sopenharmony_ci __entry->more = more; 3638c2ecf20Sopenharmony_ci ), 3648c2ecf20Sopenharmony_ci TP_printk(/* print */ 3658c2ecf20Sopenharmony_ci "qpn 0x%x %s 0x%llx", 3668c2ecf20Sopenharmony_ci __entry->qpn, 3678c2ecf20Sopenharmony_ci __get_str(msg), 3688c2ecf20Sopenharmony_ci __entry->more 3698c2ecf20Sopenharmony_ci ) 3708c2ecf20Sopenharmony_ci); 3718c2ecf20Sopenharmony_ci 3728c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 3738c2ecf20Sopenharmony_ci hfi1_msg_template, hfi1_msg_opfn_conn_request, 3748c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, const char *msg, u64 more), 3758c2ecf20Sopenharmony_ci TP_ARGS(qp, msg, more) 3768c2ecf20Sopenharmony_ci); 3778c2ecf20Sopenharmony_ci 3788c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 3798c2ecf20Sopenharmony_ci hfi1_msg_template, hfi1_msg_opfn_conn_error, 3808c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, const char *msg, u64 more), 3818c2ecf20Sopenharmony_ci TP_ARGS(qp, msg, more) 3828c2ecf20Sopenharmony_ci); 3838c2ecf20Sopenharmony_ci 3848c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 3858c2ecf20Sopenharmony_ci hfi1_msg_template, hfi1_msg_alloc_tids, 3868c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, const char *msg, u64 more), 3878c2ecf20Sopenharmony_ci TP_ARGS(qp, msg, more) 3888c2ecf20Sopenharmony_ci); 3898c2ecf20Sopenharmony_ci 3908c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 3918c2ecf20Sopenharmony_ci hfi1_msg_template, hfi1_msg_tid_restart_req, 3928c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, const char *msg, u64 more), 3938c2ecf20Sopenharmony_ci TP_ARGS(qp, msg, more) 3948c2ecf20Sopenharmony_ci); 3958c2ecf20Sopenharmony_ci 3968c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 3978c2ecf20Sopenharmony_ci hfi1_msg_template, hfi1_msg_handle_kdeth_eflags, 3988c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, const char *msg, u64 more), 3998c2ecf20Sopenharmony_ci TP_ARGS(qp, msg, more) 4008c2ecf20Sopenharmony_ci); 4018c2ecf20Sopenharmony_ci 4028c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 4038c2ecf20Sopenharmony_ci hfi1_msg_template, hfi1_msg_tid_timeout, 4048c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, const char *msg, u64 more), 4058c2ecf20Sopenharmony_ci TP_ARGS(qp, msg, more) 4068c2ecf20Sopenharmony_ci); 4078c2ecf20Sopenharmony_ci 4088c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 4098c2ecf20Sopenharmony_ci hfi1_msg_template, hfi1_msg_tid_retry_timeout, 4108c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, const char *msg, u64 more), 4118c2ecf20Sopenharmony_ci TP_ARGS(qp, msg, more) 4128c2ecf20Sopenharmony_ci); 4138c2ecf20Sopenharmony_ci 4148c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* tid_flow_page */ 4158c2ecf20Sopenharmony_ci hfi1_tid_flow_page_template, 4168c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, struct tid_rdma_flow *flow, u32 index, 4178c2ecf20Sopenharmony_ci char mtu8k, char v1, void *vaddr), 4188c2ecf20Sopenharmony_ci TP_ARGS(qp, flow, index, mtu8k, v1, vaddr), 4198c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 4208c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 4218c2ecf20Sopenharmony_ci __field(u32, qpn) 4228c2ecf20Sopenharmony_ci __field(char, mtu8k) 4238c2ecf20Sopenharmony_ci __field(char, v1) 4248c2ecf20Sopenharmony_ci __field(u32, index) 4258c2ecf20Sopenharmony_ci __field(u64, page) 4268c2ecf20Sopenharmony_ci __field(u64, vaddr) 4278c2ecf20Sopenharmony_ci ), 4288c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 4298c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 4308c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 4318c2ecf20Sopenharmony_ci __entry->mtu8k = mtu8k; 4328c2ecf20Sopenharmony_ci __entry->v1 = v1; 4338c2ecf20Sopenharmony_ci __entry->index = index; 4348c2ecf20Sopenharmony_ci __entry->page = vaddr ? (u64)virt_to_page(vaddr) : 0ULL; 4358c2ecf20Sopenharmony_ci __entry->vaddr = (u64)vaddr; 4368c2ecf20Sopenharmony_ci ), 4378c2ecf20Sopenharmony_ci TP_printk(/* print */ 4388c2ecf20Sopenharmony_ci "[%s] qpn 0x%x page[%u]: page 0x%llx %s 0x%llx", 4398c2ecf20Sopenharmony_ci __get_str(dev), 4408c2ecf20Sopenharmony_ci __entry->qpn, 4418c2ecf20Sopenharmony_ci __entry->index, 4428c2ecf20Sopenharmony_ci __entry->page, 4438c2ecf20Sopenharmony_ci __entry->mtu8k ? (__entry->v1 ? "v1" : "v0") : "vaddr", 4448c2ecf20Sopenharmony_ci __entry->vaddr 4458c2ecf20Sopenharmony_ci ) 4468c2ecf20Sopenharmony_ci); 4478c2ecf20Sopenharmony_ci 4488c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 4498c2ecf20Sopenharmony_ci hfi1_tid_flow_page_template, hfi1_tid_flow_page, 4508c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, struct tid_rdma_flow *flow, u32 index, 4518c2ecf20Sopenharmony_ci char mtu8k, char v1, void *vaddr), 4528c2ecf20Sopenharmony_ci TP_ARGS(qp, flow, index, mtu8k, v1, vaddr) 4538c2ecf20Sopenharmony_ci); 4548c2ecf20Sopenharmony_ci 4558c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* tid_pageset */ 4568c2ecf20Sopenharmony_ci hfi1_tid_pageset_template, 4578c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 index, u16 idx, u16 count), 4588c2ecf20Sopenharmony_ci TP_ARGS(qp, index, idx, count), 4598c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 4608c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 4618c2ecf20Sopenharmony_ci __field(u32, qpn) 4628c2ecf20Sopenharmony_ci __field(u32, index) 4638c2ecf20Sopenharmony_ci __field(u16, idx) 4648c2ecf20Sopenharmony_ci __field(u16, count) 4658c2ecf20Sopenharmony_ci ), 4668c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 4678c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 4688c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 4698c2ecf20Sopenharmony_ci __entry->index = index; 4708c2ecf20Sopenharmony_ci __entry->idx = idx; 4718c2ecf20Sopenharmony_ci __entry->count = count; 4728c2ecf20Sopenharmony_ci ), 4738c2ecf20Sopenharmony_ci TP_printk(/* print */ 4748c2ecf20Sopenharmony_ci "[%s] qpn 0x%x list[%u]: idx %u count %u", 4758c2ecf20Sopenharmony_ci __get_str(dev), 4768c2ecf20Sopenharmony_ci __entry->qpn, 4778c2ecf20Sopenharmony_ci __entry->index, 4788c2ecf20Sopenharmony_ci __entry->idx, 4798c2ecf20Sopenharmony_ci __entry->count 4808c2ecf20Sopenharmony_ci ) 4818c2ecf20Sopenharmony_ci); 4828c2ecf20Sopenharmony_ci 4838c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 4848c2ecf20Sopenharmony_ci hfi1_tid_pageset_template, hfi1_tid_pageset, 4858c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 index, u16 idx, u16 count), 4868c2ecf20Sopenharmony_ci TP_ARGS(qp, index, idx, count) 4878c2ecf20Sopenharmony_ci); 4888c2ecf20Sopenharmony_ci 4898c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* tid_fow */ 4908c2ecf20Sopenharmony_ci hfi1_tid_flow_template, 4918c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct tid_rdma_flow *flow), 4928c2ecf20Sopenharmony_ci TP_ARGS(qp, index, flow), 4938c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 4948c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 4958c2ecf20Sopenharmony_ci __field(u32, qpn) 4968c2ecf20Sopenharmony_ci __field(int, index) 4978c2ecf20Sopenharmony_ci __field(int, idx) 4988c2ecf20Sopenharmony_ci __field(u32, resp_ib_psn) 4998c2ecf20Sopenharmony_ci __field(u32, generation) 5008c2ecf20Sopenharmony_ci __field(u32, fspsn) 5018c2ecf20Sopenharmony_ci __field(u32, flpsn) 5028c2ecf20Sopenharmony_ci __field(u32, r_next_psn) 5038c2ecf20Sopenharmony_ci __field(u32, ib_spsn) 5048c2ecf20Sopenharmony_ci __field(u32, ib_lpsn) 5058c2ecf20Sopenharmony_ci __field(u32, npagesets) 5068c2ecf20Sopenharmony_ci __field(u32, tnode_cnt) 5078c2ecf20Sopenharmony_ci __field(u32, tidcnt) 5088c2ecf20Sopenharmony_ci __field(u32, tid_idx) 5098c2ecf20Sopenharmony_ci __field(u32, tid_offset) 5108c2ecf20Sopenharmony_ci __field(u32, length) 5118c2ecf20Sopenharmony_ci __field(u32, sent) 5128c2ecf20Sopenharmony_ci ), 5138c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 5148c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 5158c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 5168c2ecf20Sopenharmony_ci __entry->index = index; 5178c2ecf20Sopenharmony_ci __entry->idx = flow->idx; 5188c2ecf20Sopenharmony_ci __entry->resp_ib_psn = flow->flow_state.resp_ib_psn; 5198c2ecf20Sopenharmony_ci __entry->generation = flow->flow_state.generation; 5208c2ecf20Sopenharmony_ci __entry->fspsn = full_flow_psn(flow, 5218c2ecf20Sopenharmony_ci flow->flow_state.spsn); 5228c2ecf20Sopenharmony_ci __entry->flpsn = full_flow_psn(flow, 5238c2ecf20Sopenharmony_ci flow->flow_state.lpsn); 5248c2ecf20Sopenharmony_ci __entry->r_next_psn = flow->flow_state.r_next_psn; 5258c2ecf20Sopenharmony_ci __entry->ib_spsn = flow->flow_state.ib_spsn; 5268c2ecf20Sopenharmony_ci __entry->ib_lpsn = flow->flow_state.ib_lpsn; 5278c2ecf20Sopenharmony_ci __entry->npagesets = flow->npagesets; 5288c2ecf20Sopenharmony_ci __entry->tnode_cnt = flow->tnode_cnt; 5298c2ecf20Sopenharmony_ci __entry->tidcnt = flow->tidcnt; 5308c2ecf20Sopenharmony_ci __entry->tid_idx = flow->tid_idx; 5318c2ecf20Sopenharmony_ci __entry->tid_offset = flow->tid_offset; 5328c2ecf20Sopenharmony_ci __entry->length = flow->length; 5338c2ecf20Sopenharmony_ci __entry->sent = flow->sent; 5348c2ecf20Sopenharmony_ci ), 5358c2ecf20Sopenharmony_ci TP_printk(/* print */ 5368c2ecf20Sopenharmony_ci TID_FLOW_PRN, 5378c2ecf20Sopenharmony_ci __get_str(dev), 5388c2ecf20Sopenharmony_ci __entry->qpn, 5398c2ecf20Sopenharmony_ci __entry->index, 5408c2ecf20Sopenharmony_ci __entry->idx, 5418c2ecf20Sopenharmony_ci __entry->resp_ib_psn, 5428c2ecf20Sopenharmony_ci __entry->generation, 5438c2ecf20Sopenharmony_ci __entry->fspsn, 5448c2ecf20Sopenharmony_ci __entry->flpsn, 5458c2ecf20Sopenharmony_ci __entry->r_next_psn, 5468c2ecf20Sopenharmony_ci __entry->ib_spsn, 5478c2ecf20Sopenharmony_ci __entry->ib_lpsn, 5488c2ecf20Sopenharmony_ci __entry->npagesets, 5498c2ecf20Sopenharmony_ci __entry->tnode_cnt, 5508c2ecf20Sopenharmony_ci __entry->tidcnt, 5518c2ecf20Sopenharmony_ci __entry->tid_idx, 5528c2ecf20Sopenharmony_ci __entry->tid_offset, 5538c2ecf20Sopenharmony_ci __entry->length, 5548c2ecf20Sopenharmony_ci __entry->sent 5558c2ecf20Sopenharmony_ci ) 5568c2ecf20Sopenharmony_ci); 5578c2ecf20Sopenharmony_ci 5588c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 5598c2ecf20Sopenharmony_ci hfi1_tid_flow_template, hfi1_tid_flow_alloc, 5608c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct tid_rdma_flow *flow), 5618c2ecf20Sopenharmony_ci TP_ARGS(qp, index, flow) 5628c2ecf20Sopenharmony_ci); 5638c2ecf20Sopenharmony_ci 5648c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 5658c2ecf20Sopenharmony_ci hfi1_tid_flow_template, hfi1_tid_flow_build_read_pkt, 5668c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct tid_rdma_flow *flow), 5678c2ecf20Sopenharmony_ci TP_ARGS(qp, index, flow) 5688c2ecf20Sopenharmony_ci); 5698c2ecf20Sopenharmony_ci 5708c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 5718c2ecf20Sopenharmony_ci hfi1_tid_flow_template, hfi1_tid_flow_build_read_resp, 5728c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct tid_rdma_flow *flow), 5738c2ecf20Sopenharmony_ci TP_ARGS(qp, index, flow) 5748c2ecf20Sopenharmony_ci); 5758c2ecf20Sopenharmony_ci 5768c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 5778c2ecf20Sopenharmony_ci hfi1_tid_flow_template, hfi1_tid_flow_rcv_read_req, 5788c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct tid_rdma_flow *flow), 5798c2ecf20Sopenharmony_ci TP_ARGS(qp, index, flow) 5808c2ecf20Sopenharmony_ci); 5818c2ecf20Sopenharmony_ci 5828c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 5838c2ecf20Sopenharmony_ci hfi1_tid_flow_template, hfi1_tid_flow_rcv_read_resp, 5848c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct tid_rdma_flow *flow), 5858c2ecf20Sopenharmony_ci TP_ARGS(qp, index, flow) 5868c2ecf20Sopenharmony_ci); 5878c2ecf20Sopenharmony_ci 5888c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 5898c2ecf20Sopenharmony_ci hfi1_tid_flow_template, hfi1_tid_flow_restart_req, 5908c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct tid_rdma_flow *flow), 5918c2ecf20Sopenharmony_ci TP_ARGS(qp, index, flow) 5928c2ecf20Sopenharmony_ci); 5938c2ecf20Sopenharmony_ci 5948c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 5958c2ecf20Sopenharmony_ci hfi1_tid_flow_template, hfi1_tid_flow_build_write_resp, 5968c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct tid_rdma_flow *flow), 5978c2ecf20Sopenharmony_ci TP_ARGS(qp, index, flow) 5988c2ecf20Sopenharmony_ci); 5998c2ecf20Sopenharmony_ci 6008c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 6018c2ecf20Sopenharmony_ci hfi1_tid_flow_template, hfi1_tid_flow_rcv_write_resp, 6028c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct tid_rdma_flow *flow), 6038c2ecf20Sopenharmony_ci TP_ARGS(qp, index, flow) 6048c2ecf20Sopenharmony_ci); 6058c2ecf20Sopenharmony_ci 6068c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 6078c2ecf20Sopenharmony_ci hfi1_tid_flow_template, hfi1_tid_flow_build_write_data, 6088c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct tid_rdma_flow *flow), 6098c2ecf20Sopenharmony_ci TP_ARGS(qp, index, flow) 6108c2ecf20Sopenharmony_ci); 6118c2ecf20Sopenharmony_ci 6128c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 6138c2ecf20Sopenharmony_ci hfi1_tid_flow_template, hfi1_tid_flow_rcv_tid_ack, 6148c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct tid_rdma_flow *flow), 6158c2ecf20Sopenharmony_ci TP_ARGS(qp, index, flow) 6168c2ecf20Sopenharmony_ci); 6178c2ecf20Sopenharmony_ci 6188c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 6198c2ecf20Sopenharmony_ci hfi1_tid_flow_template, hfi1_tid_flow_rcv_resync, 6208c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct tid_rdma_flow *flow), 6218c2ecf20Sopenharmony_ci TP_ARGS(qp, index, flow) 6228c2ecf20Sopenharmony_ci); 6238c2ecf20Sopenharmony_ci 6248c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 6258c2ecf20Sopenharmony_ci hfi1_tid_flow_template, hfi1_tid_flow_handle_kdeth_eflags, 6268c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct tid_rdma_flow *flow), 6278c2ecf20Sopenharmony_ci TP_ARGS(qp, index, flow) 6288c2ecf20Sopenharmony_ci); 6298c2ecf20Sopenharmony_ci 6308c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 6318c2ecf20Sopenharmony_ci hfi1_tid_flow_template, hfi1_tid_flow_read_kdeth_eflags, 6328c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct tid_rdma_flow *flow), 6338c2ecf20Sopenharmony_ci TP_ARGS(qp, index, flow) 6348c2ecf20Sopenharmony_ci); 6358c2ecf20Sopenharmony_ci 6368c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* tid_node */ 6378c2ecf20Sopenharmony_ci hfi1_tid_node_template, 6388c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, const char *msg, u32 index, u32 base, 6398c2ecf20Sopenharmony_ci u8 map, u8 used, u8 cnt), 6408c2ecf20Sopenharmony_ci TP_ARGS(qp, msg, index, base, map, used, cnt), 6418c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 6428c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 6438c2ecf20Sopenharmony_ci __field(u32, qpn) 6448c2ecf20Sopenharmony_ci __string(msg, msg) 6458c2ecf20Sopenharmony_ci __field(u32, index) 6468c2ecf20Sopenharmony_ci __field(u32, base) 6478c2ecf20Sopenharmony_ci __field(u8, map) 6488c2ecf20Sopenharmony_ci __field(u8, used) 6498c2ecf20Sopenharmony_ci __field(u8, cnt) 6508c2ecf20Sopenharmony_ci ), 6518c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 6528c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 6538c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 6548c2ecf20Sopenharmony_ci __assign_str(msg, msg); 6558c2ecf20Sopenharmony_ci __entry->index = index; 6568c2ecf20Sopenharmony_ci __entry->base = base; 6578c2ecf20Sopenharmony_ci __entry->map = map; 6588c2ecf20Sopenharmony_ci __entry->used = used; 6598c2ecf20Sopenharmony_ci __entry->cnt = cnt; 6608c2ecf20Sopenharmony_ci ), 6618c2ecf20Sopenharmony_ci TP_printk(/* print */ 6628c2ecf20Sopenharmony_ci TID_NODE_PRN, 6638c2ecf20Sopenharmony_ci __get_str(dev), 6648c2ecf20Sopenharmony_ci __entry->qpn, 6658c2ecf20Sopenharmony_ci __get_str(msg), 6668c2ecf20Sopenharmony_ci __entry->index, 6678c2ecf20Sopenharmony_ci __entry->base, 6688c2ecf20Sopenharmony_ci __entry->map, 6698c2ecf20Sopenharmony_ci __entry->used, 6708c2ecf20Sopenharmony_ci __entry->cnt 6718c2ecf20Sopenharmony_ci ) 6728c2ecf20Sopenharmony_ci); 6738c2ecf20Sopenharmony_ci 6748c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 6758c2ecf20Sopenharmony_ci hfi1_tid_node_template, hfi1_tid_node_add, 6768c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, const char *msg, u32 index, u32 base, 6778c2ecf20Sopenharmony_ci u8 map, u8 used, u8 cnt), 6788c2ecf20Sopenharmony_ci TP_ARGS(qp, msg, index, base, map, used, cnt) 6798c2ecf20Sopenharmony_ci); 6808c2ecf20Sopenharmony_ci 6818c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* tid_entry */ 6828c2ecf20Sopenharmony_ci hfi1_tid_entry_template, 6838c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, u32 ent), 6848c2ecf20Sopenharmony_ci TP_ARGS(qp, index, ent), 6858c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 6868c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 6878c2ecf20Sopenharmony_ci __field(u32, qpn) 6888c2ecf20Sopenharmony_ci __field(int, index) 6898c2ecf20Sopenharmony_ci __field(u8, ctrl) 6908c2ecf20Sopenharmony_ci __field(u16, idx) 6918c2ecf20Sopenharmony_ci __field(u16, len) 6928c2ecf20Sopenharmony_ci ), 6938c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 6948c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 6958c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 6968c2ecf20Sopenharmony_ci __entry->index = index; 6978c2ecf20Sopenharmony_ci __entry->ctrl = hfi1_trace_get_tid_ctrl(ent); 6988c2ecf20Sopenharmony_ci __entry->idx = hfi1_trace_get_tid_idx(ent); 6998c2ecf20Sopenharmony_ci __entry->len = hfi1_trace_get_tid_len(ent); 7008c2ecf20Sopenharmony_ci ), 7018c2ecf20Sopenharmony_ci TP_printk(/* print */ 7028c2ecf20Sopenharmony_ci "[%s] qpn 0x%x TID entry %d: idx %u len %u ctrl 0x%x", 7038c2ecf20Sopenharmony_ci __get_str(dev), 7048c2ecf20Sopenharmony_ci __entry->qpn, 7058c2ecf20Sopenharmony_ci __entry->index, 7068c2ecf20Sopenharmony_ci __entry->idx, 7078c2ecf20Sopenharmony_ci __entry->len, 7088c2ecf20Sopenharmony_ci __entry->ctrl 7098c2ecf20Sopenharmony_ci ) 7108c2ecf20Sopenharmony_ci); 7118c2ecf20Sopenharmony_ci 7128c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 7138c2ecf20Sopenharmony_ci hfi1_tid_entry_template, hfi1_tid_entry_alloc, 7148c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, u32 entry), 7158c2ecf20Sopenharmony_ci TP_ARGS(qp, index, entry) 7168c2ecf20Sopenharmony_ci); 7178c2ecf20Sopenharmony_ci 7188c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 7198c2ecf20Sopenharmony_ci hfi1_tid_entry_template, hfi1_tid_entry_build_read_resp, 7208c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, u32 ent), 7218c2ecf20Sopenharmony_ci TP_ARGS(qp, index, ent) 7228c2ecf20Sopenharmony_ci); 7238c2ecf20Sopenharmony_ci 7248c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 7258c2ecf20Sopenharmony_ci hfi1_tid_entry_template, hfi1_tid_entry_rcv_read_req, 7268c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, u32 ent), 7278c2ecf20Sopenharmony_ci TP_ARGS(qp, index, ent) 7288c2ecf20Sopenharmony_ci); 7298c2ecf20Sopenharmony_ci 7308c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 7318c2ecf20Sopenharmony_ci hfi1_tid_entry_template, hfi1_tid_entry_rcv_write_resp, 7328c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, u32 entry), 7338c2ecf20Sopenharmony_ci TP_ARGS(qp, index, entry) 7348c2ecf20Sopenharmony_ci); 7358c2ecf20Sopenharmony_ci 7368c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 7378c2ecf20Sopenharmony_ci hfi1_tid_entry_template, hfi1_tid_entry_build_write_data, 7388c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, u32 entry), 7398c2ecf20Sopenharmony_ci TP_ARGS(qp, index, entry) 7408c2ecf20Sopenharmony_ci); 7418c2ecf20Sopenharmony_ci 7428c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* rsp_info */ 7438c2ecf20Sopenharmony_ci hfi1_responder_info_template, 7448c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 psn), 7458c2ecf20Sopenharmony_ci TP_ARGS(qp, psn), 7468c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 7478c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 7488c2ecf20Sopenharmony_ci __field(u32, qpn) 7498c2ecf20Sopenharmony_ci __field(u8, state) 7508c2ecf20Sopenharmony_ci __field(u8, s_state) 7518c2ecf20Sopenharmony_ci __field(u32, psn) 7528c2ecf20Sopenharmony_ci __field(u32, r_psn) 7538c2ecf20Sopenharmony_ci __field(u8, r_state) 7548c2ecf20Sopenharmony_ci __field(u8, r_flags) 7558c2ecf20Sopenharmony_ci __field(u8, r_head_ack_queue) 7568c2ecf20Sopenharmony_ci __field(u8, s_tail_ack_queue) 7578c2ecf20Sopenharmony_ci __field(u8, s_acked_ack_queue) 7588c2ecf20Sopenharmony_ci __field(u8, s_ack_state) 7598c2ecf20Sopenharmony_ci __field(u8, s_nak_state) 7608c2ecf20Sopenharmony_ci __field(u8, r_nak_state) 7618c2ecf20Sopenharmony_ci __field(u32, s_flags) 7628c2ecf20Sopenharmony_ci __field(u32, ps_flags) 7638c2ecf20Sopenharmony_ci __field(unsigned long, iow_flags) 7648c2ecf20Sopenharmony_ci ), 7658c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 7668c2ecf20Sopenharmony_ci struct hfi1_qp_priv *priv = qp->priv; 7678c2ecf20Sopenharmony_ci 7688c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 7698c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 7708c2ecf20Sopenharmony_ci __entry->state = qp->state; 7718c2ecf20Sopenharmony_ci __entry->s_state = qp->s_state; 7728c2ecf20Sopenharmony_ci __entry->psn = psn; 7738c2ecf20Sopenharmony_ci __entry->r_psn = qp->r_psn; 7748c2ecf20Sopenharmony_ci __entry->r_state = qp->r_state; 7758c2ecf20Sopenharmony_ci __entry->r_flags = qp->r_flags; 7768c2ecf20Sopenharmony_ci __entry->r_head_ack_queue = qp->r_head_ack_queue; 7778c2ecf20Sopenharmony_ci __entry->s_tail_ack_queue = qp->s_tail_ack_queue; 7788c2ecf20Sopenharmony_ci __entry->s_acked_ack_queue = qp->s_acked_ack_queue; 7798c2ecf20Sopenharmony_ci __entry->s_ack_state = qp->s_ack_state; 7808c2ecf20Sopenharmony_ci __entry->s_nak_state = qp->s_nak_state; 7818c2ecf20Sopenharmony_ci __entry->s_flags = qp->s_flags; 7828c2ecf20Sopenharmony_ci __entry->ps_flags = priv->s_flags; 7838c2ecf20Sopenharmony_ci __entry->iow_flags = priv->s_iowait.flags; 7848c2ecf20Sopenharmony_ci ), 7858c2ecf20Sopenharmony_ci TP_printk(/* print */ 7868c2ecf20Sopenharmony_ci RSP_INFO_PRN, 7878c2ecf20Sopenharmony_ci __get_str(dev), 7888c2ecf20Sopenharmony_ci __entry->qpn, 7898c2ecf20Sopenharmony_ci __entry->state, 7908c2ecf20Sopenharmony_ci __entry->s_state, 7918c2ecf20Sopenharmony_ci __entry->psn, 7928c2ecf20Sopenharmony_ci __entry->r_psn, 7938c2ecf20Sopenharmony_ci __entry->r_state, 7948c2ecf20Sopenharmony_ci __entry->r_flags, 7958c2ecf20Sopenharmony_ci __entry->r_head_ack_queue, 7968c2ecf20Sopenharmony_ci __entry->s_tail_ack_queue, 7978c2ecf20Sopenharmony_ci __entry->s_acked_ack_queue, 7988c2ecf20Sopenharmony_ci __entry->s_ack_state, 7998c2ecf20Sopenharmony_ci __entry->s_nak_state, 8008c2ecf20Sopenharmony_ci __entry->s_flags, 8018c2ecf20Sopenharmony_ci __entry->ps_flags, 8028c2ecf20Sopenharmony_ci __entry->iow_flags 8038c2ecf20Sopenharmony_ci ) 8048c2ecf20Sopenharmony_ci); 8058c2ecf20Sopenharmony_ci 8068c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 8078c2ecf20Sopenharmony_ci hfi1_responder_info_template, hfi1_rsp_make_rc_ack, 8088c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 psn), 8098c2ecf20Sopenharmony_ci TP_ARGS(qp, psn) 8108c2ecf20Sopenharmony_ci); 8118c2ecf20Sopenharmony_ci 8128c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 8138c2ecf20Sopenharmony_ci hfi1_responder_info_template, hfi1_rsp_rcv_tid_read_req, 8148c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 psn), 8158c2ecf20Sopenharmony_ci TP_ARGS(qp, psn) 8168c2ecf20Sopenharmony_ci); 8178c2ecf20Sopenharmony_ci 8188c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 8198c2ecf20Sopenharmony_ci hfi1_responder_info_template, hfi1_rsp_tid_rcv_error, 8208c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 psn), 8218c2ecf20Sopenharmony_ci TP_ARGS(qp, psn) 8228c2ecf20Sopenharmony_ci); 8238c2ecf20Sopenharmony_ci 8248c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 8258c2ecf20Sopenharmony_ci hfi1_responder_info_template, hfi1_rsp_tid_write_alloc_res, 8268c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 psn), 8278c2ecf20Sopenharmony_ci TP_ARGS(qp, psn) 8288c2ecf20Sopenharmony_ci); 8298c2ecf20Sopenharmony_ci 8308c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 8318c2ecf20Sopenharmony_ci hfi1_responder_info_template, hfi1_rsp_rcv_tid_write_req, 8328c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 psn), 8338c2ecf20Sopenharmony_ci TP_ARGS(qp, psn) 8348c2ecf20Sopenharmony_ci); 8358c2ecf20Sopenharmony_ci 8368c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 8378c2ecf20Sopenharmony_ci hfi1_responder_info_template, hfi1_rsp_build_tid_write_resp, 8388c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 psn), 8398c2ecf20Sopenharmony_ci TP_ARGS(qp, psn) 8408c2ecf20Sopenharmony_ci); 8418c2ecf20Sopenharmony_ci 8428c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 8438c2ecf20Sopenharmony_ci hfi1_responder_info_template, hfi1_rsp_rcv_tid_write_data, 8448c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 psn), 8458c2ecf20Sopenharmony_ci TP_ARGS(qp, psn) 8468c2ecf20Sopenharmony_ci); 8478c2ecf20Sopenharmony_ci 8488c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 8498c2ecf20Sopenharmony_ci hfi1_responder_info_template, hfi1_rsp_make_tid_ack, 8508c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 psn), 8518c2ecf20Sopenharmony_ci TP_ARGS(qp, psn) 8528c2ecf20Sopenharmony_ci); 8538c2ecf20Sopenharmony_ci 8548c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 8558c2ecf20Sopenharmony_ci hfi1_responder_info_template, hfi1_rsp_handle_kdeth_eflags, 8568c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 psn), 8578c2ecf20Sopenharmony_ci TP_ARGS(qp, psn) 8588c2ecf20Sopenharmony_ci); 8598c2ecf20Sopenharmony_ci 8608c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 8618c2ecf20Sopenharmony_ci hfi1_responder_info_template, hfi1_rsp_read_kdeth_eflags, 8628c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 psn), 8638c2ecf20Sopenharmony_ci TP_ARGS(qp, psn) 8648c2ecf20Sopenharmony_ci); 8658c2ecf20Sopenharmony_ci 8668c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* sender_info */ 8678c2ecf20Sopenharmony_ci hfi1_sender_info_template, 8688c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 8698c2ecf20Sopenharmony_ci TP_ARGS(qp), 8708c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 8718c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 8728c2ecf20Sopenharmony_ci __field(u32, qpn) 8738c2ecf20Sopenharmony_ci __field(u8, state) 8748c2ecf20Sopenharmony_ci __field(u32, s_cur) 8758c2ecf20Sopenharmony_ci __field(u32, s_tail) 8768c2ecf20Sopenharmony_ci __field(u32, s_head) 8778c2ecf20Sopenharmony_ci __field(u32, s_acked) 8788c2ecf20Sopenharmony_ci __field(u32, s_last) 8798c2ecf20Sopenharmony_ci __field(u32, s_psn) 8808c2ecf20Sopenharmony_ci __field(u32, s_last_psn) 8818c2ecf20Sopenharmony_ci __field(u32, s_flags) 8828c2ecf20Sopenharmony_ci __field(u32, ps_flags) 8838c2ecf20Sopenharmony_ci __field(unsigned long, iow_flags) 8848c2ecf20Sopenharmony_ci __field(u8, s_state) 8858c2ecf20Sopenharmony_ci __field(u8, s_num_rd) 8868c2ecf20Sopenharmony_ci __field(u8, s_retry) 8878c2ecf20Sopenharmony_ci ), 8888c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 8898c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)) 8908c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 8918c2ecf20Sopenharmony_ci __entry->state = qp->state; 8928c2ecf20Sopenharmony_ci __entry->s_cur = qp->s_cur; 8938c2ecf20Sopenharmony_ci __entry->s_tail = qp->s_tail; 8948c2ecf20Sopenharmony_ci __entry->s_head = qp->s_head; 8958c2ecf20Sopenharmony_ci __entry->s_acked = qp->s_acked; 8968c2ecf20Sopenharmony_ci __entry->s_last = qp->s_last; 8978c2ecf20Sopenharmony_ci __entry->s_psn = qp->s_psn; 8988c2ecf20Sopenharmony_ci __entry->s_last_psn = qp->s_last_psn; 8998c2ecf20Sopenharmony_ci __entry->s_flags = qp->s_flags; 9008c2ecf20Sopenharmony_ci __entry->ps_flags = ((struct hfi1_qp_priv *)qp->priv)->s_flags; 9018c2ecf20Sopenharmony_ci __entry->iow_flags = 9028c2ecf20Sopenharmony_ci ((struct hfi1_qp_priv *)qp->priv)->s_iowait.flags; 9038c2ecf20Sopenharmony_ci __entry->s_state = qp->s_state; 9048c2ecf20Sopenharmony_ci __entry->s_num_rd = qp->s_num_rd_atomic; 9058c2ecf20Sopenharmony_ci __entry->s_retry = qp->s_retry; 9068c2ecf20Sopenharmony_ci ), 9078c2ecf20Sopenharmony_ci TP_printk(/* print */ 9088c2ecf20Sopenharmony_ci SENDER_INFO_PRN, 9098c2ecf20Sopenharmony_ci __get_str(dev), 9108c2ecf20Sopenharmony_ci __entry->qpn, 9118c2ecf20Sopenharmony_ci __entry->state, 9128c2ecf20Sopenharmony_ci __entry->s_cur, 9138c2ecf20Sopenharmony_ci __entry->s_tail, 9148c2ecf20Sopenharmony_ci __entry->s_head, 9158c2ecf20Sopenharmony_ci __entry->s_acked, 9168c2ecf20Sopenharmony_ci __entry->s_last, 9178c2ecf20Sopenharmony_ci __entry->s_psn, 9188c2ecf20Sopenharmony_ci __entry->s_last_psn, 9198c2ecf20Sopenharmony_ci __entry->s_flags, 9208c2ecf20Sopenharmony_ci __entry->ps_flags, 9218c2ecf20Sopenharmony_ci __entry->iow_flags, 9228c2ecf20Sopenharmony_ci __entry->s_state, 9238c2ecf20Sopenharmony_ci __entry->s_num_rd, 9248c2ecf20Sopenharmony_ci __entry->s_retry 9258c2ecf20Sopenharmony_ci ) 9268c2ecf20Sopenharmony_ci); 9278c2ecf20Sopenharmony_ci 9288c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 9298c2ecf20Sopenharmony_ci hfi1_sender_info_template, hfi1_sender_make_rc_req, 9308c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 9318c2ecf20Sopenharmony_ci TP_ARGS(qp) 9328c2ecf20Sopenharmony_ci); 9338c2ecf20Sopenharmony_ci 9348c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 9358c2ecf20Sopenharmony_ci hfi1_sender_info_template, hfi1_sender_reset_psn, 9368c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 9378c2ecf20Sopenharmony_ci TP_ARGS(qp) 9388c2ecf20Sopenharmony_ci); 9398c2ecf20Sopenharmony_ci 9408c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 9418c2ecf20Sopenharmony_ci hfi1_sender_info_template, hfi1_sender_restart_rc, 9428c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 9438c2ecf20Sopenharmony_ci TP_ARGS(qp) 9448c2ecf20Sopenharmony_ci); 9458c2ecf20Sopenharmony_ci 9468c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 9478c2ecf20Sopenharmony_ci hfi1_sender_info_template, hfi1_sender_do_rc_ack, 9488c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 9498c2ecf20Sopenharmony_ci TP_ARGS(qp) 9508c2ecf20Sopenharmony_ci); 9518c2ecf20Sopenharmony_ci 9528c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 9538c2ecf20Sopenharmony_ci hfi1_sender_info_template, hfi1_sender_rcv_tid_read_resp, 9548c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 9558c2ecf20Sopenharmony_ci TP_ARGS(qp) 9568c2ecf20Sopenharmony_ci); 9578c2ecf20Sopenharmony_ci 9588c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 9598c2ecf20Sopenharmony_ci hfi1_sender_info_template, hfi1_sender_rcv_tid_ack, 9608c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 9618c2ecf20Sopenharmony_ci TP_ARGS(qp) 9628c2ecf20Sopenharmony_ci); 9638c2ecf20Sopenharmony_ci 9648c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 9658c2ecf20Sopenharmony_ci hfi1_sender_info_template, hfi1_sender_make_tid_pkt, 9668c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 9678c2ecf20Sopenharmony_ci TP_ARGS(qp) 9688c2ecf20Sopenharmony_ci); 9698c2ecf20Sopenharmony_ci 9708c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 9718c2ecf20Sopenharmony_ci hfi1_sender_info_template, hfi1_sender_read_kdeth_eflags, 9728c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 9738c2ecf20Sopenharmony_ci TP_ARGS(qp) 9748c2ecf20Sopenharmony_ci); 9758c2ecf20Sopenharmony_ci 9768c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* tid_read_sender */ 9778c2ecf20Sopenharmony_ci hfi1_tid_read_sender_template, 9788c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq), 9798c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq), 9808c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 9818c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 9828c2ecf20Sopenharmony_ci __field(u32, qpn) 9838c2ecf20Sopenharmony_ci __field(char, newreq) 9848c2ecf20Sopenharmony_ci __field(u32, tid_r_reqs) 9858c2ecf20Sopenharmony_ci __field(u32, tid_r_comp) 9868c2ecf20Sopenharmony_ci __field(u32, pending_tid_r_segs) 9878c2ecf20Sopenharmony_ci __field(u32, s_flags) 9888c2ecf20Sopenharmony_ci __field(u32, ps_flags) 9898c2ecf20Sopenharmony_ci __field(unsigned long, iow_flags) 9908c2ecf20Sopenharmony_ci __field(u8, s_state) 9918c2ecf20Sopenharmony_ci __field(u32, hw_flow_index) 9928c2ecf20Sopenharmony_ci __field(u32, generation) 9938c2ecf20Sopenharmony_ci __field(u32, fpsn) 9948c2ecf20Sopenharmony_ci ), 9958c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 9968c2ecf20Sopenharmony_ci struct hfi1_qp_priv *priv = qp->priv; 9978c2ecf20Sopenharmony_ci 9988c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 9998c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 10008c2ecf20Sopenharmony_ci __entry->newreq = newreq; 10018c2ecf20Sopenharmony_ci __entry->tid_r_reqs = priv->tid_r_reqs; 10028c2ecf20Sopenharmony_ci __entry->tid_r_comp = priv->tid_r_comp; 10038c2ecf20Sopenharmony_ci __entry->pending_tid_r_segs = priv->pending_tid_r_segs; 10048c2ecf20Sopenharmony_ci __entry->s_flags = qp->s_flags; 10058c2ecf20Sopenharmony_ci __entry->ps_flags = priv->s_flags; 10068c2ecf20Sopenharmony_ci __entry->iow_flags = priv->s_iowait.flags; 10078c2ecf20Sopenharmony_ci __entry->s_state = priv->s_state; 10088c2ecf20Sopenharmony_ci __entry->hw_flow_index = priv->flow_state.index; 10098c2ecf20Sopenharmony_ci __entry->generation = priv->flow_state.generation; 10108c2ecf20Sopenharmony_ci __entry->fpsn = priv->flow_state.psn; 10118c2ecf20Sopenharmony_ci ), 10128c2ecf20Sopenharmony_ci TP_printk(/* print */ 10138c2ecf20Sopenharmony_ci TID_READ_SENDER_PRN, 10148c2ecf20Sopenharmony_ci __get_str(dev), 10158c2ecf20Sopenharmony_ci __entry->qpn, 10168c2ecf20Sopenharmony_ci __entry->newreq, 10178c2ecf20Sopenharmony_ci __entry->tid_r_reqs, 10188c2ecf20Sopenharmony_ci __entry->tid_r_comp, 10198c2ecf20Sopenharmony_ci __entry->pending_tid_r_segs, 10208c2ecf20Sopenharmony_ci __entry->s_flags, 10218c2ecf20Sopenharmony_ci __entry->ps_flags, 10228c2ecf20Sopenharmony_ci __entry->iow_flags, 10238c2ecf20Sopenharmony_ci __entry->s_state, 10248c2ecf20Sopenharmony_ci __entry->hw_flow_index, 10258c2ecf20Sopenharmony_ci __entry->generation, 10268c2ecf20Sopenharmony_ci __entry->fpsn 10278c2ecf20Sopenharmony_ci ) 10288c2ecf20Sopenharmony_ci); 10298c2ecf20Sopenharmony_ci 10308c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 10318c2ecf20Sopenharmony_ci hfi1_tid_read_sender_template, hfi1_tid_read_sender_make_req, 10328c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq), 10338c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq) 10348c2ecf20Sopenharmony_ci); 10358c2ecf20Sopenharmony_ci 10368c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 10378c2ecf20Sopenharmony_ci hfi1_tid_read_sender_template, hfi1_tid_read_sender_kdeth_eflags, 10388c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq), 10398c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq) 10408c2ecf20Sopenharmony_ci); 10418c2ecf20Sopenharmony_ci 10428c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* tid_rdma_request */ 10438c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, 10448c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 10458c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 10468c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req), 10478c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 10488c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 10498c2ecf20Sopenharmony_ci __field(u32, qpn) 10508c2ecf20Sopenharmony_ci __field(char, newreq) 10518c2ecf20Sopenharmony_ci __field(u8, opcode) 10528c2ecf20Sopenharmony_ci __field(u32, psn) 10538c2ecf20Sopenharmony_ci __field(u32, lpsn) 10548c2ecf20Sopenharmony_ci __field(u32, cur_seg) 10558c2ecf20Sopenharmony_ci __field(u32, comp_seg) 10568c2ecf20Sopenharmony_ci __field(u32, ack_seg) 10578c2ecf20Sopenharmony_ci __field(u32, alloc_seg) 10588c2ecf20Sopenharmony_ci __field(u32, total_segs) 10598c2ecf20Sopenharmony_ci __field(u16, setup_head) 10608c2ecf20Sopenharmony_ci __field(u16, clear_tail) 10618c2ecf20Sopenharmony_ci __field(u16, flow_idx) 10628c2ecf20Sopenharmony_ci __field(u16, acked_tail) 10638c2ecf20Sopenharmony_ci __field(u32, state) 10648c2ecf20Sopenharmony_ci __field(u32, r_ack_psn) 10658c2ecf20Sopenharmony_ci __field(u32, r_flow_psn) 10668c2ecf20Sopenharmony_ci __field(u32, r_last_acked) 10678c2ecf20Sopenharmony_ci __field(u32, s_next_psn) 10688c2ecf20Sopenharmony_ci ), 10698c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 10708c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 10718c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 10728c2ecf20Sopenharmony_ci __entry->newreq = newreq; 10738c2ecf20Sopenharmony_ci __entry->opcode = opcode; 10748c2ecf20Sopenharmony_ci __entry->psn = psn; 10758c2ecf20Sopenharmony_ci __entry->lpsn = lpsn; 10768c2ecf20Sopenharmony_ci __entry->cur_seg = req->cur_seg; 10778c2ecf20Sopenharmony_ci __entry->comp_seg = req->comp_seg; 10788c2ecf20Sopenharmony_ci __entry->ack_seg = req->ack_seg; 10798c2ecf20Sopenharmony_ci __entry->alloc_seg = req->alloc_seg; 10808c2ecf20Sopenharmony_ci __entry->total_segs = req->total_segs; 10818c2ecf20Sopenharmony_ci __entry->setup_head = req->setup_head; 10828c2ecf20Sopenharmony_ci __entry->clear_tail = req->clear_tail; 10838c2ecf20Sopenharmony_ci __entry->flow_idx = req->flow_idx; 10848c2ecf20Sopenharmony_ci __entry->acked_tail = req->acked_tail; 10858c2ecf20Sopenharmony_ci __entry->state = req->state; 10868c2ecf20Sopenharmony_ci __entry->r_ack_psn = req->r_ack_psn; 10878c2ecf20Sopenharmony_ci __entry->r_flow_psn = req->r_flow_psn; 10888c2ecf20Sopenharmony_ci __entry->r_last_acked = req->r_last_acked; 10898c2ecf20Sopenharmony_ci __entry->s_next_psn = req->s_next_psn; 10908c2ecf20Sopenharmony_ci ), 10918c2ecf20Sopenharmony_ci TP_printk(/* print */ 10928c2ecf20Sopenharmony_ci TID_REQ_PRN, 10938c2ecf20Sopenharmony_ci __get_str(dev), 10948c2ecf20Sopenharmony_ci __entry->qpn, 10958c2ecf20Sopenharmony_ci __entry->newreq, 10968c2ecf20Sopenharmony_ci __entry->opcode, 10978c2ecf20Sopenharmony_ci __entry->psn, 10988c2ecf20Sopenharmony_ci __entry->lpsn, 10998c2ecf20Sopenharmony_ci __entry->cur_seg, 11008c2ecf20Sopenharmony_ci __entry->comp_seg, 11018c2ecf20Sopenharmony_ci __entry->ack_seg, 11028c2ecf20Sopenharmony_ci __entry->alloc_seg, 11038c2ecf20Sopenharmony_ci __entry->total_segs, 11048c2ecf20Sopenharmony_ci __entry->setup_head, 11058c2ecf20Sopenharmony_ci __entry->clear_tail, 11068c2ecf20Sopenharmony_ci __entry->flow_idx, 11078c2ecf20Sopenharmony_ci __entry->acked_tail, 11088c2ecf20Sopenharmony_ci __entry->state, 11098c2ecf20Sopenharmony_ci __entry->r_ack_psn, 11108c2ecf20Sopenharmony_ci __entry->r_flow_psn, 11118c2ecf20Sopenharmony_ci __entry->r_last_acked, 11128c2ecf20Sopenharmony_ci __entry->s_next_psn 11138c2ecf20Sopenharmony_ci ) 11148c2ecf20Sopenharmony_ci); 11158c2ecf20Sopenharmony_ci 11168c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 11178c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_make_req_read, 11188c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 11198c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 11208c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 11218c2ecf20Sopenharmony_ci); 11228c2ecf20Sopenharmony_ci 11238c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 11248c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_build_read_req, 11258c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 11268c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 11278c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 11288c2ecf20Sopenharmony_ci); 11298c2ecf20Sopenharmony_ci 11308c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 11318c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_rcv_read_req, 11328c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 11338c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 11348c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 11358c2ecf20Sopenharmony_ci); 11368c2ecf20Sopenharmony_ci 11378c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 11388c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_rcv_read_resp, 11398c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 11408c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 11418c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 11428c2ecf20Sopenharmony_ci); 11438c2ecf20Sopenharmony_ci 11448c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 11458c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_rcv_err, 11468c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 11478c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 11488c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 11498c2ecf20Sopenharmony_ci); 11508c2ecf20Sopenharmony_ci 11518c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 11528c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_restart_req, 11538c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 11548c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 11558c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 11568c2ecf20Sopenharmony_ci); 11578c2ecf20Sopenharmony_ci 11588c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 11598c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_setup_tid_wqe, 11608c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 11618c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 11628c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 11638c2ecf20Sopenharmony_ci); 11648c2ecf20Sopenharmony_ci 11658c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 11668c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_write_alloc_res, 11678c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 11688c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 11698c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 11708c2ecf20Sopenharmony_ci); 11718c2ecf20Sopenharmony_ci 11728c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 11738c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_rcv_write_req, 11748c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 11758c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 11768c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 11778c2ecf20Sopenharmony_ci); 11788c2ecf20Sopenharmony_ci 11798c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 11808c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_build_write_resp, 11818c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 11828c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 11838c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 11848c2ecf20Sopenharmony_ci); 11858c2ecf20Sopenharmony_ci 11868c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 11878c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_rcv_write_resp, 11888c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 11898c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 11908c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 11918c2ecf20Sopenharmony_ci); 11928c2ecf20Sopenharmony_ci 11938c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 11948c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_rcv_write_data, 11958c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 11968c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 11978c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 11988c2ecf20Sopenharmony_ci); 11998c2ecf20Sopenharmony_ci 12008c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 12018c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_rcv_tid_ack, 12028c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 12038c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 12048c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 12058c2ecf20Sopenharmony_ci); 12068c2ecf20Sopenharmony_ci 12078c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 12088c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_tid_retry_timeout, 12098c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 12108c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 12118c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 12128c2ecf20Sopenharmony_ci); 12138c2ecf20Sopenharmony_ci 12148c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 12158c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_rcv_resync, 12168c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 12178c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 12188c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 12198c2ecf20Sopenharmony_ci); 12208c2ecf20Sopenharmony_ci 12218c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 12228c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_make_tid_pkt, 12238c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 12248c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 12258c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 12268c2ecf20Sopenharmony_ci); 12278c2ecf20Sopenharmony_ci 12288c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 12298c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_make_tid_ack, 12308c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 12318c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 12328c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 12338c2ecf20Sopenharmony_ci); 12348c2ecf20Sopenharmony_ci 12358c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 12368c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_handle_kdeth_eflags, 12378c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 12388c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 12398c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 12408c2ecf20Sopenharmony_ci); 12418c2ecf20Sopenharmony_ci 12428c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 12438c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_read_kdeth_eflags, 12448c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 12458c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 12468c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 12478c2ecf20Sopenharmony_ci); 12488c2ecf20Sopenharmony_ci 12498c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 12508c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_make_rc_ack_write, 12518c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 12528c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 12538c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 12548c2ecf20Sopenharmony_ci); 12558c2ecf20Sopenharmony_ci 12568c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 12578c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_make_req_write, 12588c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 12598c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 12608c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 12618c2ecf20Sopenharmony_ci); 12628c2ecf20Sopenharmony_ci 12638c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 12648c2ecf20Sopenharmony_ci hfi1_tid_rdma_request_template, hfi1_tid_req_update_num_rd_atomic, 12658c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq, u8 opcode, u32 psn, u32 lpsn, 12668c2ecf20Sopenharmony_ci struct tid_rdma_request *req), 12678c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq, opcode, psn, lpsn, req) 12688c2ecf20Sopenharmony_ci); 12698c2ecf20Sopenharmony_ci 12708c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* rc_rcv_err */ 12718c2ecf20Sopenharmony_ci hfi1_rc_rcv_err_template, 12728c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 opcode, u32 psn, int diff), 12738c2ecf20Sopenharmony_ci TP_ARGS(qp, opcode, psn, diff), 12748c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 12758c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 12768c2ecf20Sopenharmony_ci __field(u32, qpn) 12778c2ecf20Sopenharmony_ci __field(u32, s_flags) 12788c2ecf20Sopenharmony_ci __field(u8, state) 12798c2ecf20Sopenharmony_ci __field(u8, s_acked_ack_queue) 12808c2ecf20Sopenharmony_ci __field(u8, s_tail_ack_queue) 12818c2ecf20Sopenharmony_ci __field(u8, r_head_ack_queue) 12828c2ecf20Sopenharmony_ci __field(u32, opcode) 12838c2ecf20Sopenharmony_ci __field(u32, psn) 12848c2ecf20Sopenharmony_ci __field(u32, r_psn) 12858c2ecf20Sopenharmony_ci __field(int, diff) 12868c2ecf20Sopenharmony_ci ), 12878c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 12888c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)) 12898c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 12908c2ecf20Sopenharmony_ci __entry->s_flags = qp->s_flags; 12918c2ecf20Sopenharmony_ci __entry->state = qp->state; 12928c2ecf20Sopenharmony_ci __entry->s_acked_ack_queue = qp->s_acked_ack_queue; 12938c2ecf20Sopenharmony_ci __entry->s_tail_ack_queue = qp->s_tail_ack_queue; 12948c2ecf20Sopenharmony_ci __entry->r_head_ack_queue = qp->r_head_ack_queue; 12958c2ecf20Sopenharmony_ci __entry->opcode = opcode; 12968c2ecf20Sopenharmony_ci __entry->psn = psn; 12978c2ecf20Sopenharmony_ci __entry->r_psn = qp->r_psn; 12988c2ecf20Sopenharmony_ci __entry->diff = diff; 12998c2ecf20Sopenharmony_ci ), 13008c2ecf20Sopenharmony_ci TP_printk(/* print */ 13018c2ecf20Sopenharmony_ci RCV_ERR_PRN, 13028c2ecf20Sopenharmony_ci __get_str(dev), 13038c2ecf20Sopenharmony_ci __entry->qpn, 13048c2ecf20Sopenharmony_ci __entry->s_flags, 13058c2ecf20Sopenharmony_ci __entry->state, 13068c2ecf20Sopenharmony_ci __entry->s_acked_ack_queue, 13078c2ecf20Sopenharmony_ci __entry->s_tail_ack_queue, 13088c2ecf20Sopenharmony_ci __entry->r_head_ack_queue, 13098c2ecf20Sopenharmony_ci __entry->opcode, 13108c2ecf20Sopenharmony_ci __entry->psn, 13118c2ecf20Sopenharmony_ci __entry->r_psn, 13128c2ecf20Sopenharmony_ci __entry->diff 13138c2ecf20Sopenharmony_ci ) 13148c2ecf20Sopenharmony_ci); 13158c2ecf20Sopenharmony_ci 13168c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 13178c2ecf20Sopenharmony_ci hfi1_rc_rcv_err_template, hfi1_tid_rdma_rcv_err, 13188c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 opcode, u32 psn, int diff), 13198c2ecf20Sopenharmony_ci TP_ARGS(qp, opcode, psn, diff) 13208c2ecf20Sopenharmony_ci); 13218c2ecf20Sopenharmony_ci 13228c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* sge */ 13238c2ecf20Sopenharmony_ci hfi1_sge_template, 13248c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct rvt_sge *sge), 13258c2ecf20Sopenharmony_ci TP_ARGS(qp, index, sge), 13268c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 13278c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 13288c2ecf20Sopenharmony_ci __field(u32, qpn) 13298c2ecf20Sopenharmony_ci __field(int, index) 13308c2ecf20Sopenharmony_ci __field(u64, vaddr) 13318c2ecf20Sopenharmony_ci __field(u32, sge_length) 13328c2ecf20Sopenharmony_ci ), 13338c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 13348c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 13358c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 13368c2ecf20Sopenharmony_ci __entry->index = index; 13378c2ecf20Sopenharmony_ci __entry->vaddr = (u64)sge->vaddr; 13388c2ecf20Sopenharmony_ci __entry->sge_length = sge->sge_length; 13398c2ecf20Sopenharmony_ci ), 13408c2ecf20Sopenharmony_ci TP_printk(/* print */ 13418c2ecf20Sopenharmony_ci "[%s] qpn 0x%x sge %d: vaddr 0x%llx sge_length %u", 13428c2ecf20Sopenharmony_ci __get_str(dev), 13438c2ecf20Sopenharmony_ci __entry->qpn, 13448c2ecf20Sopenharmony_ci __entry->index, 13458c2ecf20Sopenharmony_ci __entry->vaddr, 13468c2ecf20Sopenharmony_ci __entry->sge_length 13478c2ecf20Sopenharmony_ci ) 13488c2ecf20Sopenharmony_ci); 13498c2ecf20Sopenharmony_ci 13508c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 13518c2ecf20Sopenharmony_ci hfi1_sge_template, hfi1_sge_check_align, 13528c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, int index, struct rvt_sge *sge), 13538c2ecf20Sopenharmony_ci TP_ARGS(qp, index, sge) 13548c2ecf20Sopenharmony_ci); 13558c2ecf20Sopenharmony_ci 13568c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* tid_write_sp */ 13578c2ecf20Sopenharmony_ci hfi1_tid_write_rsp_template, 13588c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 13598c2ecf20Sopenharmony_ci TP_ARGS(qp), 13608c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 13618c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 13628c2ecf20Sopenharmony_ci __field(u32, qpn) 13638c2ecf20Sopenharmony_ci __field(u32, r_tid_head) 13648c2ecf20Sopenharmony_ci __field(u32, r_tid_tail) 13658c2ecf20Sopenharmony_ci __field(u32, r_tid_ack) 13668c2ecf20Sopenharmony_ci __field(u32, r_tid_alloc) 13678c2ecf20Sopenharmony_ci __field(u32, alloc_w_segs) 13688c2ecf20Sopenharmony_ci __field(u32, pending_tid_w_segs) 13698c2ecf20Sopenharmony_ci __field(bool, sync_pt) 13708c2ecf20Sopenharmony_ci __field(u32, ps_nak_psn) 13718c2ecf20Sopenharmony_ci __field(u8, ps_nak_state) 13728c2ecf20Sopenharmony_ci __field(u8, prnr_nak_state) 13738c2ecf20Sopenharmony_ci __field(u32, hw_flow_index) 13748c2ecf20Sopenharmony_ci __field(u32, generation) 13758c2ecf20Sopenharmony_ci __field(u32, fpsn) 13768c2ecf20Sopenharmony_ci __field(bool, resync) 13778c2ecf20Sopenharmony_ci __field(u32, r_next_psn_kdeth) 13788c2ecf20Sopenharmony_ci ), 13798c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 13808c2ecf20Sopenharmony_ci struct hfi1_qp_priv *priv = qp->priv; 13818c2ecf20Sopenharmony_ci 13828c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 13838c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 13848c2ecf20Sopenharmony_ci __entry->r_tid_head = priv->r_tid_head; 13858c2ecf20Sopenharmony_ci __entry->r_tid_tail = priv->r_tid_tail; 13868c2ecf20Sopenharmony_ci __entry->r_tid_ack = priv->r_tid_ack; 13878c2ecf20Sopenharmony_ci __entry->r_tid_alloc = priv->r_tid_alloc; 13888c2ecf20Sopenharmony_ci __entry->alloc_w_segs = priv->alloc_w_segs; 13898c2ecf20Sopenharmony_ci __entry->pending_tid_w_segs = priv->pending_tid_w_segs; 13908c2ecf20Sopenharmony_ci __entry->sync_pt = priv->sync_pt; 13918c2ecf20Sopenharmony_ci __entry->ps_nak_psn = priv->s_nak_psn; 13928c2ecf20Sopenharmony_ci __entry->ps_nak_state = priv->s_nak_state; 13938c2ecf20Sopenharmony_ci __entry->prnr_nak_state = priv->rnr_nak_state; 13948c2ecf20Sopenharmony_ci __entry->hw_flow_index = priv->flow_state.index; 13958c2ecf20Sopenharmony_ci __entry->generation = priv->flow_state.generation; 13968c2ecf20Sopenharmony_ci __entry->fpsn = priv->flow_state.psn; 13978c2ecf20Sopenharmony_ci __entry->resync = priv->resync; 13988c2ecf20Sopenharmony_ci __entry->r_next_psn_kdeth = priv->r_next_psn_kdeth; 13998c2ecf20Sopenharmony_ci ), 14008c2ecf20Sopenharmony_ci TP_printk(/* print */ 14018c2ecf20Sopenharmony_ci TID_WRITE_RSPDR_PRN, 14028c2ecf20Sopenharmony_ci __get_str(dev), 14038c2ecf20Sopenharmony_ci __entry->qpn, 14048c2ecf20Sopenharmony_ci __entry->r_tid_head, 14058c2ecf20Sopenharmony_ci __entry->r_tid_tail, 14068c2ecf20Sopenharmony_ci __entry->r_tid_ack, 14078c2ecf20Sopenharmony_ci __entry->r_tid_alloc, 14088c2ecf20Sopenharmony_ci __entry->alloc_w_segs, 14098c2ecf20Sopenharmony_ci __entry->pending_tid_w_segs, 14108c2ecf20Sopenharmony_ci __entry->sync_pt ? "yes" : "no", 14118c2ecf20Sopenharmony_ci __entry->ps_nak_psn, 14128c2ecf20Sopenharmony_ci __entry->ps_nak_state, 14138c2ecf20Sopenharmony_ci __entry->prnr_nak_state, 14148c2ecf20Sopenharmony_ci __entry->hw_flow_index, 14158c2ecf20Sopenharmony_ci __entry->generation, 14168c2ecf20Sopenharmony_ci __entry->fpsn, 14178c2ecf20Sopenharmony_ci __entry->resync ? "yes" : "no", 14188c2ecf20Sopenharmony_ci __entry->r_next_psn_kdeth 14198c2ecf20Sopenharmony_ci ) 14208c2ecf20Sopenharmony_ci); 14218c2ecf20Sopenharmony_ci 14228c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 14238c2ecf20Sopenharmony_ci hfi1_tid_write_rsp_template, hfi1_tid_write_rsp_alloc_res, 14248c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 14258c2ecf20Sopenharmony_ci TP_ARGS(qp) 14268c2ecf20Sopenharmony_ci); 14278c2ecf20Sopenharmony_ci 14288c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 14298c2ecf20Sopenharmony_ci hfi1_tid_write_rsp_template, hfi1_tid_write_rsp_rcv_req, 14308c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 14318c2ecf20Sopenharmony_ci TP_ARGS(qp) 14328c2ecf20Sopenharmony_ci); 14338c2ecf20Sopenharmony_ci 14348c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 14358c2ecf20Sopenharmony_ci hfi1_tid_write_rsp_template, hfi1_tid_write_rsp_build_resp, 14368c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 14378c2ecf20Sopenharmony_ci TP_ARGS(qp) 14388c2ecf20Sopenharmony_ci); 14398c2ecf20Sopenharmony_ci 14408c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 14418c2ecf20Sopenharmony_ci hfi1_tid_write_rsp_template, hfi1_tid_write_rsp_rcv_data, 14428c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 14438c2ecf20Sopenharmony_ci TP_ARGS(qp) 14448c2ecf20Sopenharmony_ci); 14458c2ecf20Sopenharmony_ci 14468c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 14478c2ecf20Sopenharmony_ci hfi1_tid_write_rsp_template, hfi1_tid_write_rsp_rcv_resync, 14488c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 14498c2ecf20Sopenharmony_ci TP_ARGS(qp) 14508c2ecf20Sopenharmony_ci); 14518c2ecf20Sopenharmony_ci 14528c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 14538c2ecf20Sopenharmony_ci hfi1_tid_write_rsp_template, hfi1_tid_write_rsp_make_tid_ack, 14548c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 14558c2ecf20Sopenharmony_ci TP_ARGS(qp) 14568c2ecf20Sopenharmony_ci); 14578c2ecf20Sopenharmony_ci 14588c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 14598c2ecf20Sopenharmony_ci hfi1_tid_write_rsp_template, hfi1_tid_write_rsp_handle_kdeth_eflags, 14608c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 14618c2ecf20Sopenharmony_ci TP_ARGS(qp) 14628c2ecf20Sopenharmony_ci); 14638c2ecf20Sopenharmony_ci 14648c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 14658c2ecf20Sopenharmony_ci hfi1_tid_write_rsp_template, hfi1_tid_write_rsp_make_rc_ack, 14668c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp), 14678c2ecf20Sopenharmony_ci TP_ARGS(qp) 14688c2ecf20Sopenharmony_ci); 14698c2ecf20Sopenharmony_ci 14708c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* tid_write_sender */ 14718c2ecf20Sopenharmony_ci hfi1_tid_write_sender_template, 14728c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq), 14738c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq), 14748c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 14758c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 14768c2ecf20Sopenharmony_ci __field(u32, qpn) 14778c2ecf20Sopenharmony_ci __field(char, newreq) 14788c2ecf20Sopenharmony_ci __field(u32, s_tid_cur) 14798c2ecf20Sopenharmony_ci __field(u32, s_tid_tail) 14808c2ecf20Sopenharmony_ci __field(u32, s_tid_head) 14818c2ecf20Sopenharmony_ci __field(u32, pending_tid_w_resp) 14828c2ecf20Sopenharmony_ci __field(u32, n_requests) 14838c2ecf20Sopenharmony_ci __field(u32, n_tid_requests) 14848c2ecf20Sopenharmony_ci __field(u32, s_flags) 14858c2ecf20Sopenharmony_ci __field(u32, ps_flags) 14868c2ecf20Sopenharmony_ci __field(unsigned long, iow_flags) 14878c2ecf20Sopenharmony_ci __field(u8, s_state) 14888c2ecf20Sopenharmony_ci __field(u8, s_retry) 14898c2ecf20Sopenharmony_ci ), 14908c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 14918c2ecf20Sopenharmony_ci struct hfi1_qp_priv *priv = qp->priv; 14928c2ecf20Sopenharmony_ci 14938c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 14948c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 14958c2ecf20Sopenharmony_ci __entry->newreq = newreq; 14968c2ecf20Sopenharmony_ci __entry->s_tid_cur = priv->s_tid_cur; 14978c2ecf20Sopenharmony_ci __entry->s_tid_tail = priv->s_tid_tail; 14988c2ecf20Sopenharmony_ci __entry->s_tid_head = priv->s_tid_head; 14998c2ecf20Sopenharmony_ci __entry->pending_tid_w_resp = priv->pending_tid_w_resp; 15008c2ecf20Sopenharmony_ci __entry->n_requests = atomic_read(&priv->n_requests); 15018c2ecf20Sopenharmony_ci __entry->n_tid_requests = atomic_read(&priv->n_tid_requests); 15028c2ecf20Sopenharmony_ci __entry->s_flags = qp->s_flags; 15038c2ecf20Sopenharmony_ci __entry->ps_flags = priv->s_flags; 15048c2ecf20Sopenharmony_ci __entry->iow_flags = priv->s_iowait.flags; 15058c2ecf20Sopenharmony_ci __entry->s_state = priv->s_state; 15068c2ecf20Sopenharmony_ci __entry->s_retry = priv->s_retry; 15078c2ecf20Sopenharmony_ci ), 15088c2ecf20Sopenharmony_ci TP_printk(/* print */ 15098c2ecf20Sopenharmony_ci TID_WRITE_SENDER_PRN, 15108c2ecf20Sopenharmony_ci __get_str(dev), 15118c2ecf20Sopenharmony_ci __entry->qpn, 15128c2ecf20Sopenharmony_ci __entry->newreq, 15138c2ecf20Sopenharmony_ci __entry->s_tid_cur, 15148c2ecf20Sopenharmony_ci __entry->s_tid_tail, 15158c2ecf20Sopenharmony_ci __entry->s_tid_head, 15168c2ecf20Sopenharmony_ci __entry->pending_tid_w_resp, 15178c2ecf20Sopenharmony_ci __entry->n_requests, 15188c2ecf20Sopenharmony_ci __entry->n_tid_requests, 15198c2ecf20Sopenharmony_ci __entry->s_flags, 15208c2ecf20Sopenharmony_ci __entry->ps_flags, 15218c2ecf20Sopenharmony_ci __entry->iow_flags, 15228c2ecf20Sopenharmony_ci __entry->s_state, 15238c2ecf20Sopenharmony_ci __entry->s_retry 15248c2ecf20Sopenharmony_ci ) 15258c2ecf20Sopenharmony_ci); 15268c2ecf20Sopenharmony_ci 15278c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 15288c2ecf20Sopenharmony_ci hfi1_tid_write_sender_template, hfi1_tid_write_sender_rcv_resp, 15298c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq), 15308c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq) 15318c2ecf20Sopenharmony_ci); 15328c2ecf20Sopenharmony_ci 15338c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 15348c2ecf20Sopenharmony_ci hfi1_tid_write_sender_template, hfi1_tid_write_sender_rcv_tid_ack, 15358c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq), 15368c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq) 15378c2ecf20Sopenharmony_ci); 15388c2ecf20Sopenharmony_ci 15398c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 15408c2ecf20Sopenharmony_ci hfi1_tid_write_sender_template, hfi1_tid_write_sender_retry_timeout, 15418c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq), 15428c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq) 15438c2ecf20Sopenharmony_ci); 15448c2ecf20Sopenharmony_ci 15458c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 15468c2ecf20Sopenharmony_ci hfi1_tid_write_sender_template, hfi1_tid_write_sender_make_tid_pkt, 15478c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq), 15488c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq) 15498c2ecf20Sopenharmony_ci); 15508c2ecf20Sopenharmony_ci 15518c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 15528c2ecf20Sopenharmony_ci hfi1_tid_write_sender_template, hfi1_tid_write_sender_make_req, 15538c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq), 15548c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq) 15558c2ecf20Sopenharmony_ci); 15568c2ecf20Sopenharmony_ci 15578c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 15588c2ecf20Sopenharmony_ci hfi1_tid_write_sender_template, hfi1_tid_write_sender_restart_rc, 15598c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, char newreq), 15608c2ecf20Sopenharmony_ci TP_ARGS(qp, newreq) 15618c2ecf20Sopenharmony_ci); 15628c2ecf20Sopenharmony_ci 15638c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* tid_ack */ 15648c2ecf20Sopenharmony_ci hfi1_tid_ack_template, 15658c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 aeth, u32 psn, 15668c2ecf20Sopenharmony_ci u32 req_psn, u32 resync_psn), 15678c2ecf20Sopenharmony_ci TP_ARGS(qp, aeth, psn, req_psn, resync_psn), 15688c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 15698c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 15708c2ecf20Sopenharmony_ci __field(u32, qpn) 15718c2ecf20Sopenharmony_ci __field(u32, aeth) 15728c2ecf20Sopenharmony_ci __field(u32, psn) 15738c2ecf20Sopenharmony_ci __field(u32, req_psn) 15748c2ecf20Sopenharmony_ci __field(u32, resync_psn) 15758c2ecf20Sopenharmony_ci ), 15768c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 15778c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)) 15788c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 15798c2ecf20Sopenharmony_ci __entry->aeth = aeth; 15808c2ecf20Sopenharmony_ci __entry->psn = psn; 15818c2ecf20Sopenharmony_ci __entry->req_psn = req_psn; 15828c2ecf20Sopenharmony_ci __entry->resync_psn = resync_psn; 15838c2ecf20Sopenharmony_ci ), 15848c2ecf20Sopenharmony_ci TP_printk(/* print */ 15858c2ecf20Sopenharmony_ci "[%s] qpn 0x%x aeth 0x%x psn 0x%x req_psn 0x%x resync_psn 0x%x", 15868c2ecf20Sopenharmony_ci __get_str(dev), 15878c2ecf20Sopenharmony_ci __entry->qpn, 15888c2ecf20Sopenharmony_ci __entry->aeth, 15898c2ecf20Sopenharmony_ci __entry->psn, 15908c2ecf20Sopenharmony_ci __entry->req_psn, 15918c2ecf20Sopenharmony_ci __entry->resync_psn 15928c2ecf20Sopenharmony_ci ) 15938c2ecf20Sopenharmony_ci); 15948c2ecf20Sopenharmony_ci 15958c2ecf20Sopenharmony_ciDEFINE_EVENT(/* rcv_tid_ack */ 15968c2ecf20Sopenharmony_ci hfi1_tid_ack_template, hfi1_rcv_tid_ack, 15978c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u32 aeth, u32 psn, 15988c2ecf20Sopenharmony_ci u32 req_psn, u32 resync_psn), 15998c2ecf20Sopenharmony_ci TP_ARGS(qp, aeth, psn, req_psn, resync_psn) 16008c2ecf20Sopenharmony_ci); 16018c2ecf20Sopenharmony_ci 16028c2ecf20Sopenharmony_ciDECLARE_EVENT_CLASS(/* kdeth_eflags_error */ 16038c2ecf20Sopenharmony_ci hfi1_kdeth_eflags_error_template, 16048c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u8 rcv_type, u8 rte, u32 psn), 16058c2ecf20Sopenharmony_ci TP_ARGS(qp, rcv_type, rte, psn), 16068c2ecf20Sopenharmony_ci TP_STRUCT__entry(/* entry */ 16078c2ecf20Sopenharmony_ci DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 16088c2ecf20Sopenharmony_ci __field(u32, qpn) 16098c2ecf20Sopenharmony_ci __field(u8, rcv_type) 16108c2ecf20Sopenharmony_ci __field(u8, rte) 16118c2ecf20Sopenharmony_ci __field(u32, psn) 16128c2ecf20Sopenharmony_ci ), 16138c2ecf20Sopenharmony_ci TP_fast_assign(/* assign */ 16148c2ecf20Sopenharmony_ci DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 16158c2ecf20Sopenharmony_ci __entry->qpn = qp->ibqp.qp_num; 16168c2ecf20Sopenharmony_ci __entry->rcv_type = rcv_type; 16178c2ecf20Sopenharmony_ci __entry->rte = rte; 16188c2ecf20Sopenharmony_ci __entry->psn = psn; 16198c2ecf20Sopenharmony_ci ), 16208c2ecf20Sopenharmony_ci TP_printk(/* print */ 16218c2ecf20Sopenharmony_ci KDETH_EFLAGS_ERR_PRN, 16228c2ecf20Sopenharmony_ci __get_str(dev), 16238c2ecf20Sopenharmony_ci __entry->qpn, 16248c2ecf20Sopenharmony_ci __entry->rcv_type, 16258c2ecf20Sopenharmony_ci __entry->rte, 16268c2ecf20Sopenharmony_ci __entry->psn 16278c2ecf20Sopenharmony_ci ) 16288c2ecf20Sopenharmony_ci); 16298c2ecf20Sopenharmony_ci 16308c2ecf20Sopenharmony_ciDEFINE_EVENT(/* event */ 16318c2ecf20Sopenharmony_ci hfi1_kdeth_eflags_error_template, hfi1_eflags_err_write, 16328c2ecf20Sopenharmony_ci TP_PROTO(struct rvt_qp *qp, u8 rcv_type, u8 rte, u32 psn), 16338c2ecf20Sopenharmony_ci TP_ARGS(qp, rcv_type, rte, psn) 16348c2ecf20Sopenharmony_ci); 16358c2ecf20Sopenharmony_ci 16368c2ecf20Sopenharmony_ci#endif /* __HFI1_TRACE_TID_H */ 16378c2ecf20Sopenharmony_ci 16388c2ecf20Sopenharmony_ci#undef TRACE_INCLUDE_PATH 16398c2ecf20Sopenharmony_ci#undef TRACE_INCLUDE_FILE 16408c2ecf20Sopenharmony_ci#define TRACE_INCLUDE_PATH . 16418c2ecf20Sopenharmony_ci#define TRACE_INCLUDE_FILE trace_tid 16428c2ecf20Sopenharmony_ci#include <trace/define_trace.h> 1643