1 /* SPDX-License-Identifier: BSD-3-Clause 2 * Copyright(C) 2020 Marvell International Ltd. 3 */ 4 5 #ifndef _RTE_ETHDEV_TRACE_FP_H_ 6 #define _RTE_ETHDEV_TRACE_FP_H_ 7 8 /** 9 * @file 10 * 11 * API for ethdev trace support 12 */ 13 14 #include <rte_trace_point.h> 15 16 #ifdef __cplusplus 17 extern "C" { 18 #endif 19 20 RTE_TRACE_POINT_FP( 21 rte_ethdev_trace_rx_burst_empty, 22 RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id, 23 void **pkt_tbl), 24 rte_trace_point_emit_u16(port_id); 25 rte_trace_point_emit_u16(queue_id); 26 rte_trace_point_emit_ptr(pkt_tbl); 27 ) 28 29 RTE_TRACE_POINT_FP( 30 rte_ethdev_trace_rx_burst_nonempty, 31 RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id, 32 void **pkt_tbl, uint16_t nb_rx), 33 rte_trace_point_emit_u16(port_id); 34 rte_trace_point_emit_u16(queue_id); 35 rte_trace_point_emit_ptr(pkt_tbl); 36 rte_trace_point_emit_u16(nb_rx); 37 ) 38 39 RTE_TRACE_POINT_FP( 40 rte_ethdev_trace_tx_burst, 41 RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id, 42 void **pkts_tbl, uint16_t nb_pkts), 43 rte_trace_point_emit_u16(port_id); 44 rte_trace_point_emit_u16(queue_id); 45 rte_trace_point_emit_ptr(pkts_tbl); 46 rte_trace_point_emit_u16(nb_pkts); 47 ) 48 49 RTE_TRACE_POINT_FP( 50 rte_eth_trace_call_rx_callbacks_empty, 51 RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id, 52 void **rx_pkts, uint16_t nb_pkts), 53 rte_trace_point_emit_u16(port_id); 54 rte_trace_point_emit_u16(queue_id); 55 rte_trace_point_emit_ptr(rx_pkts); 56 rte_trace_point_emit_u16(nb_pkts); 57 ) 58 59 RTE_TRACE_POINT_FP( 60 rte_eth_trace_call_rx_callbacks_nonempty, 61 RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id, 62 void **rx_pkts, uint16_t nb_rx, uint16_t nb_pkts), 63 rte_trace_point_emit_u16(port_id); 64 rte_trace_point_emit_u16(queue_id); 65 rte_trace_point_emit_ptr(rx_pkts); 66 rte_trace_point_emit_u16(nb_rx); 67 rte_trace_point_emit_u16(nb_pkts); 68 ) 69 70 RTE_TRACE_POINT_FP( 71 rte_eth_trace_call_tx_callbacks, 72 RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id, 73 void **tx_pkts, uint16_t nb_pkts), 74 rte_trace_point_emit_u16(port_id); 75 rte_trace_point_emit_u16(queue_id); 76 rte_trace_point_emit_ptr(tx_pkts); 77 rte_trace_point_emit_u16(nb_pkts); 78 ) 79 80 RTE_TRACE_POINT_FP( 81 rte_eth_trace_tx_buffer_drop_callback, 82 RTE_TRACE_POINT_ARGS(void **pkts, uint16_t unsent), 83 rte_trace_point_emit_ptr(pkts); 84 rte_trace_point_emit_u16(unsent); 85 ) 86 87 RTE_TRACE_POINT_FP( 88 rte_eth_trace_tx_buffer_count_callback, 89 RTE_TRACE_POINT_ARGS(void **pkts, uint16_t unsent, uint64_t count), 90 rte_trace_point_emit_ptr(pkts); 91 rte_trace_point_emit_u16(unsent); 92 rte_trace_point_emit_u64(count); 93 ) 94 95 RTE_TRACE_POINT_FP( 96 rte_eth_trace_tx_queue_count, 97 RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id, int rc), 98 rte_trace_point_emit_u16(port_id); 99 rte_trace_point_emit_u16(queue_id); 100 rte_trace_point_emit_int(rc); 101 ) 102 103 #ifdef __cplusplus 104 } 105 #endif 106 107 #endif /* _RTE_ETHDEV_TRACE_FP_H_ */ 108