1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(C) 2020 Marvell International Ltd.
5 #ifndef _RTE_EVENTDEV_TRACE_H_
6 #define _RTE_EVENTDEV_TRACE_H_
11 * API for ethdev trace support
18 #include <rte_trace_point.h>
20 #include "rte_eventdev.h"
21 #include "rte_event_eth_rx_adapter.h"
22 #include "rte_event_timer_adapter.h"
25 rte_eventdev_trace_configure
,
26 RTE_TRACE_POINT_ARGS(uint8_t dev_id
,
27 const struct rte_event_dev_config
*dev_conf
, int rc
),
28 rte_trace_point_emit_u8(dev_id
);
29 rte_trace_point_emit_u32(dev_conf
->dequeue_timeout_ns
);
30 rte_trace_point_emit_i32(dev_conf
->nb_events_limit
);
31 rte_trace_point_emit_u8(dev_conf
->nb_event_queues
);
32 rte_trace_point_emit_u8(dev_conf
->nb_event_ports
);
33 rte_trace_point_emit_u32(dev_conf
->nb_event_queue_flows
);
34 rte_trace_point_emit_u32(dev_conf
->nb_event_port_dequeue_depth
);
35 rte_trace_point_emit_u32(dev_conf
->nb_event_port_enqueue_depth
);
36 rte_trace_point_emit_u32(dev_conf
->event_dev_cfg
);
37 rte_trace_point_emit_int(rc
);
41 rte_eventdev_trace_queue_setup
,
42 RTE_TRACE_POINT_ARGS(uint8_t dev_id
, uint8_t queue_id
,
43 const struct rte_event_queue_conf
*queue_conf
),
44 rte_trace_point_emit_u8(dev_id
);
45 rte_trace_point_emit_u8(queue_id
);
46 rte_trace_point_emit_u32(queue_conf
->nb_atomic_flows
);
47 rte_trace_point_emit_u32(queue_conf
->nb_atomic_order_sequences
);
48 rte_trace_point_emit_u32(queue_conf
->event_queue_cfg
);
49 rte_trace_point_emit_u8(queue_conf
->schedule_type
);
50 rte_trace_point_emit_u8(queue_conf
->priority
);
54 rte_eventdev_trace_port_setup
,
55 RTE_TRACE_POINT_ARGS(uint8_t dev_id
, uint8_t port_id
,
56 const struct rte_event_port_conf
*port_conf
, int rc
),
57 rte_trace_point_emit_u8(dev_id
);
58 rte_trace_point_emit_u8(port_id
);
59 rte_trace_point_emit_i32(port_conf
->new_event_threshold
);
60 rte_trace_point_emit_u16(port_conf
->dequeue_depth
);
61 rte_trace_point_emit_u16(port_conf
->enqueue_depth
);
62 rte_trace_point_emit_u8(port_conf
->disable_implicit_release
);
63 rte_trace_point_emit_int(rc
);
67 rte_eventdev_trace_port_link
,
68 RTE_TRACE_POINT_ARGS(uint8_t dev_id
, uint8_t port_id
,
69 uint16_t nb_links
, int rc
),
70 rte_trace_point_emit_u8(dev_id
);
71 rte_trace_point_emit_u8(port_id
);
72 rte_trace_point_emit_u16(nb_links
);
73 rte_trace_point_emit_int(rc
);
77 rte_eventdev_trace_port_unlink
,
78 RTE_TRACE_POINT_ARGS(uint8_t dev_id
, uint8_t port_id
,
79 uint16_t nb_unlinks
, int rc
),
80 rte_trace_point_emit_u8(dev_id
);
81 rte_trace_point_emit_u8(port_id
);
82 rte_trace_point_emit_u16(nb_unlinks
);
83 rte_trace_point_emit_int(rc
);
87 rte_eventdev_trace_start
,
88 RTE_TRACE_POINT_ARGS(uint8_t dev_id
, int rc
),
89 rte_trace_point_emit_u8(dev_id
);
90 rte_trace_point_emit_int(rc
);
94 rte_eventdev_trace_stop
,
95 RTE_TRACE_POINT_ARGS(uint8_t dev_id
),
96 rte_trace_point_emit_u8(dev_id
);
100 rte_eventdev_trace_close
,
101 RTE_TRACE_POINT_ARGS(uint8_t dev_id
),
102 rte_trace_point_emit_u8(dev_id
);
106 rte_eventdev_trace_eth_rx_adapter_create
,
107 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
, uint8_t dev_id
, void *conf_cb
,
109 rte_trace_point_emit_u8(adptr_id
);
110 rte_trace_point_emit_u8(dev_id
);
111 rte_trace_point_emit_ptr(conf_cb
);
112 rte_trace_point_emit_ptr(conf_arg
);
116 rte_eventdev_trace_eth_rx_adapter_free
,
117 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
),
118 rte_trace_point_emit_u8(adptr_id
);
122 rte_eventdev_trace_eth_rx_adapter_queue_add
,
123 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
, uint16_t eth_dev_id
,
125 const struct rte_event_eth_rx_adapter_queue_conf
*queue_conf
,
127 rte_trace_point_emit_u8(adptr_id
);
128 rte_trace_point_emit_u16(eth_dev_id
);
129 rte_trace_point_emit_i32(rx_queue_id
);
130 rte_trace_point_emit_u32(queue_conf
->rx_queue_flags
);
131 rte_trace_point_emit_u16(queue_conf
->servicing_weight
);
132 rte_trace_point_emit_u8(queue_conf
->ev
.queue_id
);
133 rte_trace_point_emit_u8(queue_conf
->ev
.priority
);
134 rte_trace_point_emit_int(rc
);
138 rte_eventdev_trace_eth_rx_adapter_queue_del
,
139 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
, uint16_t eth_dev_id
,
140 int32_t rx_queue_id
, int rc
),
141 rte_trace_point_emit_u8(adptr_id
);
142 rte_trace_point_emit_u16(eth_dev_id
);
143 rte_trace_point_emit_i32(rx_queue_id
);
144 rte_trace_point_emit_int(rc
);
148 rte_eventdev_trace_eth_rx_adapter_start
,
149 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
),
150 rte_trace_point_emit_u8(adptr_id
);
154 rte_eventdev_trace_eth_rx_adapter_stop
,
155 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
),
156 rte_trace_point_emit_u8(adptr_id
);
160 rte_eventdev_trace_eth_tx_adapter_create
,
161 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
, uint8_t dev_id
, void *conf_cb
,
162 struct rte_event_port_conf
*port_conf
, int rc
),
163 rte_trace_point_emit_u8(adptr_id
);
164 rte_trace_point_emit_u8(dev_id
);
165 rte_trace_point_emit_i32(port_conf
->new_event_threshold
);
166 rte_trace_point_emit_u16(port_conf
->dequeue_depth
);
167 rte_trace_point_emit_u16(port_conf
->enqueue_depth
);
168 rte_trace_point_emit_u8(port_conf
->disable_implicit_release
);
169 rte_trace_point_emit_ptr(conf_cb
);
170 rte_trace_point_emit_int(rc
);
174 rte_eventdev_trace_eth_tx_adapter_free
,
175 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
, int rc
),
176 rte_trace_point_emit_u8(adptr_id
);
177 rte_trace_point_emit_int(rc
);
181 rte_eventdev_trace_eth_tx_adapter_queue_add
,
182 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
, uint16_t eth_dev_id
,
183 int32_t queue
, int rc
),
184 rte_trace_point_emit_u8(adptr_id
);
185 rte_trace_point_emit_u16(eth_dev_id
);
186 rte_trace_point_emit_i32(queue
);
187 rte_trace_point_emit_int(rc
);
191 rte_eventdev_trace_eth_tx_adapter_queue_del
,
192 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
, uint16_t eth_dev_id
,
193 int32_t queue
, int rc
),
194 rte_trace_point_emit_u8(adptr_id
);
195 rte_trace_point_emit_u16(eth_dev_id
);
196 rte_trace_point_emit_i32(queue
);
197 rte_trace_point_emit_int(rc
);
201 rte_eventdev_trace_eth_tx_adapter_start
,
202 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
, int rc
),
203 rte_trace_point_emit_u8(adptr_id
);
204 rte_trace_point_emit_int(rc
);
208 rte_eventdev_trace_eth_tx_adapter_stop
,
209 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
, int rc
),
210 rte_trace_point_emit_u8(adptr_id
);
211 rte_trace_point_emit_int(rc
);
215 rte_eventdev_trace_timer_adapter_create
,
216 RTE_TRACE_POINT_ARGS(uint16_t adapter_id
, void *adapter
,
217 const struct rte_event_timer_adapter_conf
*conf
,
219 rte_trace_point_emit_u16(adapter_id
);
220 rte_trace_point_emit_ptr(adapter
);
221 rte_trace_point_emit_ptr(conf
);
222 rte_trace_point_emit_u8(conf
->event_dev_id
);
223 rte_trace_point_emit_u16(conf
->timer_adapter_id
);
224 rte_trace_point_emit_u64(conf
->timer_tick_ns
);
225 rte_trace_point_emit_u64(conf
->max_tmo_ns
);
226 rte_trace_point_emit_u64(conf
->nb_timers
);
227 rte_trace_point_emit_u64(conf
->flags
);
228 rte_trace_point_emit_ptr(conf_cb
);
232 rte_eventdev_trace_timer_adapter_start
,
233 RTE_TRACE_POINT_ARGS(const void *adapter
),
234 rte_trace_point_emit_ptr(adapter
);
238 rte_eventdev_trace_timer_adapter_stop
,
239 RTE_TRACE_POINT_ARGS(const void *adapter
),
240 rte_trace_point_emit_ptr(adapter
);
244 rte_eventdev_trace_timer_adapter_free
,
245 RTE_TRACE_POINT_ARGS(void *adapter
),
246 rte_trace_point_emit_ptr(adapter
);
250 rte_eventdev_trace_crypto_adapter_create
,
251 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
, uint8_t dev_id
, void *adapter
,
252 struct rte_event_port_conf
*port_conf
, uint8_t mode
),
253 rte_trace_point_emit_u8(adptr_id
);
254 rte_trace_point_emit_u8(dev_id
);
255 rte_trace_point_emit_ptr(adapter
);
256 rte_trace_point_emit_u8(mode
);
257 rte_trace_point_emit_i32(port_conf
->new_event_threshold
);
258 rte_trace_point_emit_u16(port_conf
->dequeue_depth
);
259 rte_trace_point_emit_u16(port_conf
->enqueue_depth
);
260 rte_trace_point_emit_u8(port_conf
->disable_implicit_release
);
264 rte_eventdev_trace_crypto_adapter_free
,
265 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
, void *adapter
),
266 rte_trace_point_emit_u8(adptr_id
);
267 rte_trace_point_emit_ptr(adapter
);
271 rte_eventdev_trace_crypto_adapter_queue_pair_add
,
272 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
, uint8_t cdev_id
,
273 const void *event
, int32_t queue_pair_id
),
274 rte_trace_point_emit_u8(adptr_id
);
275 rte_trace_point_emit_u8(cdev_id
);
276 rte_trace_point_emit_i32(queue_pair_id
);
277 rte_trace_point_emit_ptr(event
);
281 rte_eventdev_trace_crypto_adapter_queue_pair_del
,
282 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
, uint8_t cdev_id
,
283 int32_t queue_pair_id
, int rc
),
284 rte_trace_point_emit_u8(adptr_id
);
285 rte_trace_point_emit_u8(cdev_id
);
286 rte_trace_point_emit_i32(queue_pair_id
);
287 rte_trace_point_emit_int(rc
);
291 rte_eventdev_trace_crypto_adapter_start
,
292 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
, void *adapter
),
293 rte_trace_point_emit_u8(adptr_id
);
294 rte_trace_point_emit_ptr(adapter
);
298 rte_eventdev_trace_crypto_adapter_stop
,
299 RTE_TRACE_POINT_ARGS(uint8_t adptr_id
),
300 rte_trace_point_emit_u8(adptr_id
);
307 #endif /* _RTE_EVENTDEV_TRACE_H_ */