Branch data Line data Source code
1 : : /* SPDX-License-Identifier: BSD-3-Clause 2 : : * Copyright (c) 2023 NVIDIA Corporation & Affiliates 3 : : */ 4 : : 5 : : #ifndef RTE_PMD_MLX5_TRACE_H_ 6 : : #define RTE_PMD_MLX5_TRACE_H_ 7 : : 8 : : /** 9 : : * @file 10 : : * 11 : : * API for mlx5 PMD trace support 12 : : */ 13 : : 14 : : #include <mlx5_prm.h> 15 : : #include <rte_mbuf.h> 16 : : #include <rte_trace_point.h> 17 : : 18 : : #ifdef __cplusplus 19 : : extern "C" { 20 : : #endif 21 : : 22 : : /* TX burst subroutines trace points. */ 23 : 251 : RTE_TRACE_POINT_FP( 24 : : rte_pmd_mlx5_trace_tx_entry, 25 : : RTE_TRACE_POINT_ARGS(uint64_t real_time, uint16_t port_id, uint16_t queue_id), 26 : : rte_trace_point_emit_u64(real_time); 27 : : rte_trace_point_emit_u16(port_id); 28 : : rte_trace_point_emit_u16(queue_id); 29 : : ) 30 : : 31 : 251 : RTE_TRACE_POINT_FP( 32 : : rte_pmd_mlx5_trace_tx_exit, 33 : : RTE_TRACE_POINT_ARGS(uint64_t real_time, uint16_t nb_sent, uint16_t nb_req), 34 : : rte_trace_point_emit_u64(real_time); 35 : : rte_trace_point_emit_u16(nb_sent); 36 : : rte_trace_point_emit_u16(nb_req); 37 : : ) 38 : : 39 : 251 : RTE_TRACE_POINT_FP( 40 : : rte_pmd_mlx5_trace_tx_wqe, 41 : : RTE_TRACE_POINT_ARGS(uint64_t real_time, uint32_t opcode), 42 : : rte_trace_point_emit_u64(real_time); 43 : : rte_trace_point_emit_u32(opcode); 44 : : ) 45 : : 46 : 251 : RTE_TRACE_POINT_FP( 47 : : rte_pmd_mlx5_trace_tx_wait, 48 : : RTE_TRACE_POINT_ARGS(uint64_t ts), 49 : : rte_trace_point_emit_u64(ts); 50 : : ) 51 : : 52 : : 53 : 251 : RTE_TRACE_POINT_FP( 54 : : rte_pmd_mlx5_trace_tx_push, 55 : : RTE_TRACE_POINT_ARGS(const struct rte_mbuf *mbuf, uint16_t wqe_id), 56 : : rte_trace_point_emit_ptr(mbuf); 57 : : rte_trace_point_emit_u32(mbuf->pkt_len); 58 : : rte_trace_point_emit_u16(mbuf->nb_segs); 59 : : rte_trace_point_emit_u16(wqe_id); 60 : : ) 61 : : 62 : 251 : RTE_TRACE_POINT_FP( 63 : : rte_pmd_mlx5_trace_tx_complete, 64 : : RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id, 65 : : uint16_t wqe_id, uint64_t ts), 66 : : rte_trace_point_emit_u16(port_id); 67 : : rte_trace_point_emit_u16(queue_id); 68 : : rte_trace_point_emit_u64(ts); 69 : : rte_trace_point_emit_u16(wqe_id); 70 : : ) 71 : : 72 : : #ifdef __cplusplus 73 : : } 74 : : #endif 75 : : 76 : : #endif /* RTE_PMD_MLX5_TRACE_H_ */