xref: /dpdk/lib/ethdev/ethdev_trace.h (revision 665b49c51639a10c553433bc2bcd85c7331c631e)
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(C) 2023 Marvell International Ltd.
3  */
4 
5 #ifndef ETHDEV_TRACE_H
6 #define ETHDEV_TRACE_H
7 
8 /**
9  * @file
10  *
11  * API for ethdev trace support
12  */
13 
14 #ifdef __cplusplus
15 extern "C" {
16 #endif
17 
18 #include <dev_driver.h>
19 #include <rte_trace_point.h>
20 
21 #include "rte_ethdev.h"
22 #include "rte_mtr.h"
23 #include "rte_tm.h"
24 
25 RTE_TRACE_POINT(
26 	rte_ethdev_trace_configure,
27 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t nb_rx_q,
28 		uint16_t nb_tx_q, const struct rte_eth_conf *dev_conf, int rc),
29 	rte_trace_point_emit_u16(port_id);
30 	rte_trace_point_emit_u16(nb_rx_q);
31 	rte_trace_point_emit_u16(nb_tx_q);
32 	rte_trace_point_emit_u32(dev_conf->link_speeds);
33 	rte_trace_point_emit_u32(dev_conf->rxmode.mq_mode);
34 	rte_trace_point_emit_u32(dev_conf->rxmode.mtu);
35 	rte_trace_point_emit_u64(dev_conf->rxmode.offloads);
36 	rte_trace_point_emit_u32(dev_conf->txmode.mq_mode);
37 	rte_trace_point_emit_u64(dev_conf->txmode.offloads);
38 	rte_trace_point_emit_u32(dev_conf->lpbk_mode);
39 	rte_trace_point_emit_int(rc);
40 )
41 
42 RTE_TRACE_POINT(
43 	rte_ethdev_trace_rxq_setup,
44 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t rx_queue_id,
45 		uint16_t nb_rx_desc, void *mp,
46 		const struct rte_eth_rxconf *rx_conf, int rc),
47 	rte_trace_point_emit_u16(port_id);
48 	rte_trace_point_emit_u16(rx_queue_id);
49 	rte_trace_point_emit_u16(nb_rx_desc);
50 	rte_trace_point_emit_ptr(mp);
51 	rte_trace_point_emit_u8(rx_conf->rx_thresh.pthresh);
52 	rte_trace_point_emit_u8(rx_conf->rx_thresh.hthresh);
53 	rte_trace_point_emit_u8(rx_conf->rx_thresh.wthresh);
54 	rte_trace_point_emit_u8(rx_conf->rx_drop_en);
55 	rte_trace_point_emit_u8(rx_conf->rx_deferred_start);
56 	rte_trace_point_emit_u64(rx_conf->offloads);
57 	rte_trace_point_emit_int(rc);
58 )
59 
60 RTE_TRACE_POINT(
61 	rte_ethdev_trace_txq_setup,
62 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t tx_queue_id,
63 		uint16_t nb_tx_desc, const struct rte_eth_txconf *tx_conf),
64 	rte_trace_point_emit_u16(port_id);
65 	rte_trace_point_emit_u16(tx_queue_id);
66 	rte_trace_point_emit_u16(nb_tx_desc);
67 	rte_trace_point_emit_u8(tx_conf->tx_thresh.pthresh);
68 	rte_trace_point_emit_u8(tx_conf->tx_thresh.hthresh);
69 	rte_trace_point_emit_u8(tx_conf->tx_thresh.wthresh);
70 	rte_trace_point_emit_u8(tx_conf->tx_deferred_start);
71 	rte_trace_point_emit_u16(tx_conf->tx_free_thresh);
72 	rte_trace_point_emit_u64(tx_conf->offloads);
73 )
74 
75 RTE_TRACE_POINT(
76 	rte_ethdev_trace_start,
77 	RTE_TRACE_POINT_ARGS(uint16_t port_id),
78 	rte_trace_point_emit_u16(port_id);
79 )
80 
81 RTE_TRACE_POINT(
82 	rte_ethdev_trace_stop,
83 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int ret),
84 	rte_trace_point_emit_u16(port_id);
85 	rte_trace_point_emit_int(ret);
86 )
87 
88 RTE_TRACE_POINT(
89 	rte_ethdev_trace_close,
90 	RTE_TRACE_POINT_ARGS(uint16_t port_id),
91 	rte_trace_point_emit_u16(port_id);
92 )
93 
94 RTE_TRACE_POINT(
95 	rte_eth_trace_iterator_init,
96 	RTE_TRACE_POINT_ARGS(const char *devargs),
97 	rte_trace_point_emit_string(devargs);
98 )
99 
100 RTE_TRACE_POINT(
101 	rte_eth_trace_iterator_next,
102 	RTE_TRACE_POINT_ARGS(const struct rte_dev_iterator *iter, uint16_t id),
103 	rte_trace_point_emit_string(iter->bus_str);
104 	rte_trace_point_emit_string(iter->cls_str);
105 	rte_trace_point_emit_u16(id);
106 )
107 
108 RTE_TRACE_POINT(
109 	rte_eth_trace_iterator_cleanup,
110 	RTE_TRACE_POINT_ARGS(const struct rte_dev_iterator *iter),
111 	rte_trace_point_emit_string(iter->bus_str);
112 	rte_trace_point_emit_string(iter->cls_str);
113 )
114 
115 RTE_TRACE_POINT(
116 	rte_ethdev_trace_owner_new,
117 	RTE_TRACE_POINT_ARGS(uint64_t owner_id),
118 	rte_trace_point_emit_u64(owner_id);
119 )
120 
121 RTE_TRACE_POINT(
122 	rte_ethdev_trace_owner_set,
123 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
124 		const struct rte_eth_dev_owner *owner, int ret),
125 	rte_trace_point_emit_u16(port_id);
126 	rte_trace_point_emit_u64(owner->id);
127 	rte_trace_point_emit_string(owner->name);
128 	rte_trace_point_emit_int(ret);
129 )
130 
131 RTE_TRACE_POINT(
132 	rte_ethdev_trace_owner_unset,
133 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint64_t owner_id, int ret),
134 	rte_trace_point_emit_u16(port_id);
135 	rte_trace_point_emit_u64(owner_id);
136 	rte_trace_point_emit_int(ret);
137 )
138 
139 RTE_TRACE_POINT(
140 	rte_ethdev_trace_owner_delete,
141 	RTE_TRACE_POINT_ARGS(uint64_t owner_id, int ret),
142 	rte_trace_point_emit_u64(owner_id);
143 	rte_trace_point_emit_int(ret);
144 )
145 
146 RTE_TRACE_POINT(
147 	rte_ethdev_trace_socket_id,
148 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int socket_id),
149 	rte_trace_point_emit_u16(port_id);
150 	rte_trace_point_emit_int(socket_id);
151 )
152 
153 RTE_TRACE_POINT(
154 	rte_ethdev_trace_rx_queue_start,
155 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t rx_queue_id, int ret),
156 	rte_trace_point_emit_u16(port_id);
157 	rte_trace_point_emit_u16(rx_queue_id);
158 	rte_trace_point_emit_int(ret);
159 )
160 
161 RTE_TRACE_POINT(
162 	rte_ethdev_trace_rx_queue_stop,
163 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t rx_queue_id, int ret),
164 	rte_trace_point_emit_u16(port_id);
165 	rte_trace_point_emit_u16(rx_queue_id);
166 	rte_trace_point_emit_int(ret);
167 )
168 
169 RTE_TRACE_POINT(
170 	rte_ethdev_trace_tx_queue_start,
171 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t tx_queue_id, int ret),
172 	rte_trace_point_emit_u16(port_id);
173 	rte_trace_point_emit_u16(tx_queue_id);
174 	rte_trace_point_emit_int(ret);
175 )
176 
177 RTE_TRACE_POINT(
178 	rte_ethdev_trace_tx_queue_stop,
179 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t tx_queue_id, int ret),
180 	rte_trace_point_emit_u16(port_id);
181 	rte_trace_point_emit_u16(tx_queue_id);
182 	rte_trace_point_emit_int(ret);
183 )
184 
185 RTE_TRACE_POINT(
186 	rte_eth_trace_speed_bitflag,
187 	RTE_TRACE_POINT_ARGS(uint32_t speed, int duplex, uint32_t ret),
188 	rte_trace_point_emit_u32(speed);
189 	rte_trace_point_emit_int(duplex);
190 	rte_trace_point_emit_u32(ret);
191 )
192 
193 RTE_TRACE_POINT(
194 	rte_ethdev_trace_rx_offload_name,
195 	RTE_TRACE_POINT_ARGS(uint64_t offload, const char *name),
196 	rte_trace_point_emit_u64(offload);
197 	rte_trace_point_emit_string(name);
198 )
199 
200 RTE_TRACE_POINT(
201 	rte_ethdev_trace_tx_offload_name,
202 	RTE_TRACE_POINT_ARGS(uint64_t offload, const char *name),
203 	rte_trace_point_emit_u64(offload);
204 	rte_trace_point_emit_string(name);
205 )
206 
207 RTE_TRACE_POINT(
208 	rte_ethdev_trace_capability_name,
209 	RTE_TRACE_POINT_ARGS(uint64_t capability, const char *name),
210 	rte_trace_point_emit_u64(capability);
211 	rte_trace_point_emit_string(name);
212 )
213 
214 RTE_TRACE_POINT(
215 	rte_ethdev_trace_set_link_up,
216 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int ret),
217 	rte_trace_point_emit_u16(port_id);
218 	rte_trace_point_emit_int(ret);
219 )
220 
221 RTE_TRACE_POINT(
222 	rte_ethdev_trace_set_link_down,
223 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int ret),
224 	rte_trace_point_emit_u16(port_id);
225 	rte_trace_point_emit_int(ret);
226 )
227 
228 RTE_TRACE_POINT(
229 	rte_ethdev_trace_reset,
230 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int ret),
231 	rte_trace_point_emit_u16(port_id);
232 	rte_trace_point_emit_int(ret);
233 )
234 
235 RTE_TRACE_POINT(
236 	rte_eth_trace_rx_hairpin_queue_setup,
237 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t rx_queue_id,
238 		uint16_t nb_rx_desc, const struct rte_eth_hairpin_conf *conf,
239 		int ret),
240 	uint16_t peer_count = conf->peer_count;
241 	uint8_t tx_explicit = conf->tx_explicit;
242 	uint8_t manual_bind = conf->manual_bind;
243 	uint8_t use_locked_device_memory = conf->use_locked_device_memory;
244 	uint8_t use_rte_memory = conf->use_rte_memory;
245 	uint8_t force_memory = conf->force_memory;
246 
247 	rte_trace_point_emit_u16(port_id);
248 	rte_trace_point_emit_u16(rx_queue_id);
249 	rte_trace_point_emit_u16(nb_rx_desc);
250 	rte_trace_point_emit_u16(peer_count);
251 	rte_trace_point_emit_u8(tx_explicit);
252 	rte_trace_point_emit_u8(manual_bind);
253 	rte_trace_point_emit_u8(use_locked_device_memory);
254 	rte_trace_point_emit_u8(use_rte_memory);
255 	rte_trace_point_emit_u8(force_memory);
256 	rte_trace_point_emit_int(ret);
257 )
258 
259 RTE_TRACE_POINT(
260 	rte_eth_trace_tx_hairpin_queue_setup,
261 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t tx_queue_id,
262 		uint16_t nb_tx_desc, const struct rte_eth_hairpin_conf *conf,
263 		int ret),
264 	uint16_t peer_count = conf->peer_count;
265 	uint8_t tx_explicit = conf->tx_explicit;
266 	uint8_t manual_bind = conf->manual_bind;
267 	uint8_t use_locked_device_memory = conf->use_locked_device_memory;
268 	uint8_t use_rte_memory = conf->use_rte_memory;
269 	uint8_t force_memory = conf->force_memory;
270 
271 	rte_trace_point_emit_u16(port_id);
272 	rte_trace_point_emit_u16(tx_queue_id);
273 	rte_trace_point_emit_u16(nb_tx_desc);
274 	rte_trace_point_emit_u16(peer_count);
275 	rte_trace_point_emit_u8(tx_explicit);
276 	rte_trace_point_emit_u8(manual_bind);
277 	rte_trace_point_emit_u8(use_locked_device_memory);
278 	rte_trace_point_emit_u8(use_rte_memory);
279 	rte_trace_point_emit_u8(force_memory);
280 	rte_trace_point_emit_int(ret);
281 )
282 
283 RTE_TRACE_POINT(
284 	rte_eth_trace_hairpin_bind,
285 	RTE_TRACE_POINT_ARGS(uint16_t tx_port, uint16_t rx_port, int ret),
286 	rte_trace_point_emit_u16(tx_port);
287 	rte_trace_point_emit_u16(rx_port);
288 	rte_trace_point_emit_int(ret);
289 )
290 
291 RTE_TRACE_POINT(
292 	rte_eth_trace_hairpin_unbind,
293 	RTE_TRACE_POINT_ARGS(uint16_t tx_port, uint16_t rx_port, int ret),
294 	rte_trace_point_emit_u16(tx_port);
295 	rte_trace_point_emit_u16(rx_port);
296 	rte_trace_point_emit_int(ret);
297 )
298 
299 RTE_TRACE_POINT(
300 	rte_eth_trace_tx_buffer_set_err_callback,
301 	RTE_TRACE_POINT_ARGS(const struct rte_eth_dev_tx_buffer *buffer),
302 	rte_trace_point_emit_ptr(buffer->error_callback);
303 	rte_trace_point_emit_ptr(buffer->error_userdata);
304 )
305 
306 RTE_TRACE_POINT(
307 	rte_eth_trace_promiscuous_enable,
308 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int promiscuous, int ret),
309 	rte_trace_point_emit_u16(port_id);
310 	rte_trace_point_emit_int(promiscuous);
311 	rte_trace_point_emit_int(ret);
312 )
313 
314 RTE_TRACE_POINT(
315 	rte_eth_trace_promiscuous_disable,
316 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int promiscuous, int ret),
317 	rte_trace_point_emit_u16(port_id);
318 	rte_trace_point_emit_int(promiscuous);
319 	rte_trace_point_emit_int(ret);
320 )
321 
322 RTE_TRACE_POINT(
323 	rte_eth_trace_allmulticast_enable,
324 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int all_multicast, int ret),
325 	rte_trace_point_emit_u16(port_id);
326 	rte_trace_point_emit_int(all_multicast);
327 	rte_trace_point_emit_int(ret);
328 )
329 
330 RTE_TRACE_POINT(
331 	rte_eth_trace_allmulticast_disable,
332 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int all_multicast, int ret),
333 	rte_trace_point_emit_u16(port_id);
334 	rte_trace_point_emit_int(all_multicast);
335 	rte_trace_point_emit_int(ret);
336 )
337 
338 RTE_TRACE_POINT(
339 	rte_ethdev_trace_set_rx_queue_stats_mapping,
340 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t rx_queue_id,
341 		uint8_t stat_idx, int ret),
342 	rte_trace_point_emit_u16(port_id);
343 	rte_trace_point_emit_u16(rx_queue_id);
344 	rte_trace_point_emit_u8(stat_idx);
345 	rte_trace_point_emit_int(ret);
346 )
347 
348 RTE_TRACE_POINT(
349 	rte_ethdev_trace_set_tx_queue_stats_mapping,
350 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t tx_queue_id,
351 		uint8_t stat_idx, int ret),
352 	rte_trace_point_emit_u16(port_id);
353 	rte_trace_point_emit_u16(tx_queue_id);
354 	rte_trace_point_emit_u8(stat_idx);
355 	rte_trace_point_emit_int(ret);
356 )
357 
358 RTE_TRACE_POINT(
359 	rte_ethdev_trace_fw_version_get,
360 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const char *fw_version,
361 		size_t fw_size, int ret),
362 	rte_trace_point_emit_u16(port_id);
363 	rte_trace_point_emit_string(fw_version);
364 	rte_trace_point_emit_size_t(fw_size);
365 	rte_trace_point_emit_int(ret);
366 )
367 
368 RTE_TRACE_POINT(
369 	rte_eth_trace_find_next,
370 	RTE_TRACE_POINT_ARGS(uint16_t port_id),
371 	rte_trace_point_emit_u16(port_id);
372 )
373 
374 RTE_TRACE_POINT(
375 	rte_eth_trace_find_next_of,
376 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const struct rte_device *parent),
377 	rte_trace_point_emit_u16(port_id);
378 	rte_trace_point_emit_string(parent->name);
379 	rte_trace_point_emit_string(parent->bus_info);
380 	rte_trace_point_emit_int(parent->numa_node);
381 )
382 
383 RTE_TRACE_POINT(
384 	rte_eth_trace_find_next_sibling,
385 	RTE_TRACE_POINT_ARGS(uint16_t port_id_start, uint16_t ref_port_id,
386 		uint16_t ret),
387 	rte_trace_point_emit_u16(port_id_start);
388 	rte_trace_point_emit_u16(ref_port_id);
389 	rte_trace_point_emit_u16(ret);
390 )
391 
392 RTE_TRACE_POINT(
393 	rte_ethdev_trace_is_valid_port,
394 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int is_valid),
395 	rte_trace_point_emit_u16(port_id);
396 	rte_trace_point_emit_int(is_valid);
397 )
398 
399 RTE_TRACE_POINT(
400 	rte_eth_trace_find_next_owned_by,
401 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint64_t owner_id),
402 	rte_trace_point_emit_u16(port_id);
403 	rte_trace_point_emit_u64(owner_id);
404 )
405 
406 RTE_TRACE_POINT(
407 	rte_ethdev_trace_owner_get,
408 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
409 		const struct rte_eth_dev_owner *owner),
410 	rte_trace_point_emit_u16(port_id);
411 	rte_trace_point_emit_u64(owner->id);
412 	rte_trace_point_emit_string(owner->name);
413 )
414 
415 RTE_TRACE_POINT(
416 	rte_ethdev_trace_get_sec_ctx,
417 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const void *ctx),
418 	rte_trace_point_emit_u16(port_id);
419 	rte_trace_point_emit_ptr(ctx);
420 )
421 
422 RTE_TRACE_POINT(
423 	rte_ethdev_trace_count_avail,
424 	RTE_TRACE_POINT_ARGS(uint16_t count),
425 	rte_trace_point_emit_u16(count);
426 )
427 
428 RTE_TRACE_POINT(
429 	rte_ethdev_trace_count_total,
430 	RTE_TRACE_POINT_ARGS(uint16_t count),
431 	rte_trace_point_emit_u16(count);
432 )
433 
434 RTE_TRACE_POINT(
435 	rte_ethdev_trace_get_name_by_port,
436 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const char *name),
437 	rte_trace_point_emit_u16(port_id);
438 	rte_trace_point_emit_string(name);
439 )
440 
441 RTE_TRACE_POINT(
442 	rte_ethdev_trace_get_port_by_name,
443 	RTE_TRACE_POINT_ARGS(const char *name, uint16_t port_id),
444 	rte_trace_point_emit_string(name);
445 	rte_trace_point_emit_u16(port_id);
446 )
447 
448 RTE_TRACE_POINT(
449 	rte_ethdev_trace_is_removed,
450 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int ret),
451 	rte_trace_point_emit_u16(port_id);
452 	rte_trace_point_emit_int(ret);
453 )
454 
455 RTE_TRACE_POINT(
456 	rte_eth_trace_hairpin_get_peer_ports,
457 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const uint16_t *peer_ports,
458 		size_t len, uint32_t direction, int ret),
459 	rte_trace_point_emit_u16(port_id);
460 	rte_trace_point_emit_ptr(peer_ports);
461 	rte_trace_point_emit_size_t(len);
462 	rte_trace_point_emit_u32(direction);
463 	rte_trace_point_emit_int(ret);
464 )
465 
466 RTE_TRACE_POINT(
467 	rte_eth_trace_tx_buffer_init,
468 	RTE_TRACE_POINT_ARGS(const struct rte_eth_dev_tx_buffer *buffer,
469 		uint16_t size, int ret),
470 	rte_trace_point_emit_ptr(buffer);
471 	rte_trace_point_emit_u16(size);
472 	rte_trace_point_emit_int(ret);
473 )
474 
475 RTE_TRACE_POINT(
476 	rte_eth_trace_tx_done_cleanup,
477 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id,
478 		uint32_t free_cnt, int ret),
479 	rte_trace_point_emit_u16(port_id);
480 	rte_trace_point_emit_u16(queue_id);
481 	rte_trace_point_emit_u32(free_cnt);
482 	rte_trace_point_emit_int(ret);
483 )
484 
485 RTE_TRACE_POINT(
486 	rte_eth_trace_promiscuous_get,
487 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int promiscuous),
488 	rte_trace_point_emit_u16(port_id);
489 	rte_trace_point_emit_int(promiscuous);
490 )
491 
492 RTE_TRACE_POINT(
493 	rte_eth_trace_allmulticast_get,
494 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int all_multicast),
495 	rte_trace_point_emit_u16(port_id);
496 	rte_trace_point_emit_int(all_multicast);
497 )
498 
499 RTE_TRACE_POINT(
500 	rte_eth_trace_link_get_nowait,
501 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const struct rte_eth_link *link),
502 	uint8_t link_duplex = link->link_duplex;
503 	uint8_t link_autoneg = link->link_autoneg;
504 	uint8_t link_status = link->link_status;
505 
506 	rte_trace_point_emit_u16(port_id);
507 	rte_trace_point_emit_u32(link->link_speed);
508 	rte_trace_point_emit_u8(link_duplex);
509 	rte_trace_point_emit_u8(link_autoneg);
510 	rte_trace_point_emit_u8(link_status);
511 )
512 
513 RTE_TRACE_POINT(
514 	rte_eth_trace_link_to_str,
515 	RTE_TRACE_POINT_ARGS(size_t len, const struct rte_eth_link *link,
516 		char *str, int ret),
517 	uint8_t link_duplex = link->link_duplex;
518 	uint8_t link_autoneg = link->link_autoneg;
519 	uint8_t link_status = link->link_status;
520 
521 	rte_trace_point_emit_size_t(len);
522 	rte_trace_point_emit_u32(link->link_speed);
523 	rte_trace_point_emit_u8(link_duplex);
524 	rte_trace_point_emit_u8(link_autoneg);
525 	rte_trace_point_emit_u8(link_status);
526 	rte_trace_point_emit_string(str);
527 	rte_trace_point_emit_int(ret);
528 )
529 
530 RTE_TRACE_POINT(
531 	rte_eth_trace_stats_reset,
532 	RTE_TRACE_POINT_ARGS(uint16_t port_id),
533 	rte_trace_point_emit_u16(port_id);
534 )
535 
536 RTE_TRACE_POINT(
537 	rte_eth_trace_xstats_get_id_by_name,
538 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const char *xstat_name,
539 		uint64_t id),
540 	rte_trace_point_emit_u16(port_id);
541 	rte_trace_point_emit_string(xstat_name);
542 	rte_trace_point_emit_u64(id);
543 )
544 
545 RTE_TRACE_POINT(
546 	rte_eth_trace_xstats_get_names_by_id,
547 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
548 		const struct rte_eth_xstat_name *xstats_names, uint64_t ids),
549 	rte_trace_point_emit_u16(port_id);
550 	rte_trace_point_emit_string(xstats_names->name);
551 	rte_trace_point_emit_u64(ids);
552 )
553 
554 RTE_TRACE_POINT(
555 	rte_eth_trace_xstats_get_names,
556 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int i,
557 		struct rte_eth_xstat_name xstats_names,
558 		unsigned int size, int cnt_used_entries),
559 	rte_trace_point_emit_u16(port_id);
560 	rte_trace_point_emit_int(i);
561 	rte_trace_point_emit_string(xstats_names.name);
562 	rte_trace_point_emit_u32(size);
563 	rte_trace_point_emit_int(cnt_used_entries);
564 )
565 
566 RTE_TRACE_POINT(
567 	rte_eth_trace_xstats_get_by_id,
568 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const uint64_t *ids,
569 		const uint64_t *values, unsigned int size),
570 	rte_trace_point_emit_u16(port_id);
571 	rte_trace_point_emit_ptr(ids);
572 	rte_trace_point_emit_ptr(values);
573 	rte_trace_point_emit_u32(size);
574 )
575 
576 RTE_TRACE_POINT(
577 	rte_eth_trace_xstats_get,
578 	RTE_TRACE_POINT_ARGS(uint16_t port_id, struct rte_eth_xstat xstats),
579 	rte_trace_point_emit_u16(port_id);
580 	rte_trace_point_emit_u64(xstats.id);
581 	rte_trace_point_emit_u64(xstats.value);
582 )
583 
584 RTE_TRACE_POINT(
585 	rte_eth_trace_xstats_reset,
586 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int ret),
587 	rte_trace_point_emit_u16(port_id);
588 	rte_trace_point_emit_int(ret);
589 )
590 
591 RTE_TRACE_POINT(
592 	rte_ethdev_trace_info_get,
593 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
594 		const struct rte_eth_dev_info *dev_info),
595 	rte_trace_point_emit_u16(port_id);
596 	rte_trace_point_emit_string(dev_info->driver_name);
597 	rte_trace_point_emit_u16(dev_info->min_mtu);
598 	rte_trace_point_emit_u16(dev_info->max_mtu);
599 	rte_trace_point_emit_u32(dev_info->min_rx_bufsize);
600 	rte_trace_point_emit_u32(dev_info->max_rx_pktlen);
601 	rte_trace_point_emit_u16(dev_info->max_rx_queues);
602 	rte_trace_point_emit_u16(dev_info->max_tx_queues);
603 	rte_trace_point_emit_u32(dev_info->max_mac_addrs);
604 	rte_trace_point_emit_u64(dev_info->rx_offload_capa);
605 	rte_trace_point_emit_u64(dev_info->tx_offload_capa);
606 	rte_trace_point_emit_u64(dev_info->rx_queue_offload_capa);
607 	rte_trace_point_emit_u64(dev_info->tx_queue_offload_capa);
608 	rte_trace_point_emit_u16(dev_info->reta_size);
609 	rte_trace_point_emit_u8(dev_info->hash_key_size);
610 	rte_trace_point_emit_u64(dev_info->flow_type_rss_offloads);
611 	rte_trace_point_emit_u16(dev_info->rx_desc_lim.nb_max);
612 	rte_trace_point_emit_u16(dev_info->rx_desc_lim.nb_min);
613 	rte_trace_point_emit_u16(dev_info->rx_desc_lim.nb_align);
614 	rte_trace_point_emit_u16(dev_info->tx_desc_lim.nb_max);
615 	rte_trace_point_emit_u16(dev_info->tx_desc_lim.nb_min);
616 	rte_trace_point_emit_u16(dev_info->tx_desc_lim.nb_align);
617 	rte_trace_point_emit_u32(dev_info->speed_capa);
618 	rte_trace_point_emit_u16(dev_info->nb_rx_queues);
619 	rte_trace_point_emit_u16(dev_info->nb_tx_queues);
620 	rte_trace_point_emit_u64(dev_info->dev_capa);
621 )
622 
623 RTE_TRACE_POINT(
624 	rte_ethdev_trace_conf_get,
625 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
626 		const struct rte_eth_conf *dev_conf),
627 	rte_trace_point_emit_u16(port_id);
628 	rte_trace_point_emit_u32(dev_conf->link_speeds);
629 	rte_trace_point_emit_u64(dev_conf->rxmode.offloads);
630 	rte_trace_point_emit_u64(dev_conf->txmode.offloads);
631 	rte_trace_point_emit_u32(dev_conf->lpbk_mode);
632 )
633 
634 RTE_TRACE_POINT(
635 	rte_ethdev_trace_get_supported_ptypes,
636 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int supported_num, int num,
637 		uint32_t ptypes),
638 	rte_trace_point_emit_u16(port_id);
639 	rte_trace_point_emit_int(supported_num);
640 	rte_trace_point_emit_int(num);
641 	rte_trace_point_emit_u32(ptypes);
642 )
643 
644 RTE_TRACE_POINT(
645 	rte_ethdev_trace_set_ptypes,
646 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int supported_num,
647 		unsigned int num, uint32_t set_ptypes),
648 	rte_trace_point_emit_u16(port_id);
649 	rte_trace_point_emit_int(supported_num);
650 	rte_trace_point_emit_u32(num);
651 	rte_trace_point_emit_u32(set_ptypes);
652 )
653 
654 RTE_TRACE_POINT(
655 	rte_eth_trace_macaddrs_get,
656 	RTE_TRACE_POINT_ARGS(uint16_t port_id, unsigned int num),
657 	rte_trace_point_emit_u16(port_id);
658 	rte_trace_point_emit_u32(num);
659 )
660 
661 RTE_TRACE_POINT(
662 	rte_ethdev_trace_set_mtu,
663 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t mtu, int ret),
664 	rte_trace_point_emit_u16(port_id);
665 	rte_trace_point_emit_u16(mtu);
666 	rte_trace_point_emit_int(ret);
667 )
668 
669 RTE_TRACE_POINT(
670 	rte_ethdev_trace_vlan_filter,
671 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t vlan_id, int on,
672 		int ret),
673 	rte_trace_point_emit_u16(port_id);
674 	rte_trace_point_emit_u16(vlan_id);
675 	rte_trace_point_emit_int(on);
676 	rte_trace_point_emit_int(ret);
677 )
678 
679 RTE_TRACE_POINT(
680 	rte_ethdev_trace_set_vlan_strip_on_queue,
681 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t rx_queue_id, int on),
682 	rte_trace_point_emit_u16(port_id);
683 	rte_trace_point_emit_u16(rx_queue_id);
684 	rte_trace_point_emit_int(on);
685 )
686 
687 RTE_TRACE_POINT(
688 	rte_ethdev_trace_set_vlan_ether_type,
689 	RTE_TRACE_POINT_ARGS(uint16_t port_id, enum rte_vlan_type vlan_type,
690 		uint16_t tag_type, int ret),
691 	rte_trace_point_emit_u16(port_id);
692 	rte_trace_point_emit_int(vlan_type);
693 	rte_trace_point_emit_u16(tag_type);
694 	rte_trace_point_emit_int(ret);
695 )
696 
697 RTE_TRACE_POINT(
698 	rte_ethdev_trace_set_vlan_offload,
699 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int offload_mask, int ret),
700 	rte_trace_point_emit_u16(port_id);
701 	rte_trace_point_emit_int(offload_mask);
702 	rte_trace_point_emit_int(ret);
703 )
704 
705 RTE_TRACE_POINT(
706 	rte_ethdev_trace_get_vlan_offload,
707 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int ret),
708 	rte_trace_point_emit_u16(port_id);
709 	rte_trace_point_emit_int(ret);
710 )
711 
712 RTE_TRACE_POINT(
713 	rte_ethdev_trace_set_vlan_pvid,
714 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t pvid, int on, int ret),
715 	rte_trace_point_emit_u16(port_id);
716 	rte_trace_point_emit_u16(pvid);
717 	rte_trace_point_emit_int(on);
718 	rte_trace_point_emit_int(ret);
719 )
720 
721 RTE_TRACE_POINT(
722 	rte_ethdev_trace_flow_ctrl_get,
723 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
724 		const struct rte_eth_fc_conf *fc_conf, int ret),
725 	rte_trace_point_emit_u16(port_id);
726 	rte_trace_point_emit_u32(fc_conf->high_water);
727 	rte_trace_point_emit_u32(fc_conf->low_water);
728 	rte_trace_point_emit_u16(fc_conf->pause_time);
729 	rte_trace_point_emit_u16(fc_conf->send_xon);
730 	rte_trace_point_emit_int(fc_conf->mode);
731 	rte_trace_point_emit_u8(fc_conf->mac_ctrl_frame_fwd);
732 	rte_trace_point_emit_u8(fc_conf->autoneg);
733 	rte_trace_point_emit_int(ret);
734 )
735 
736 RTE_TRACE_POINT(
737 	rte_ethdev_trace_flow_ctrl_set,
738 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
739 		const struct rte_eth_fc_conf *fc_conf, int ret),
740 	rte_trace_point_emit_u16(port_id);
741 	rte_trace_point_emit_u32(fc_conf->high_water);
742 	rte_trace_point_emit_u32(fc_conf->low_water);
743 	rte_trace_point_emit_u16(fc_conf->pause_time);
744 	rte_trace_point_emit_u16(fc_conf->send_xon);
745 	rte_trace_point_emit_int(fc_conf->mode);
746 	rte_trace_point_emit_u8(fc_conf->mac_ctrl_frame_fwd);
747 	rte_trace_point_emit_u8(fc_conf->autoneg);
748 	rte_trace_point_emit_int(ret);
749 )
750 
751 RTE_TRACE_POINT(
752 	rte_ethdev_trace_priority_flow_ctrl_set,
753 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
754 		const struct rte_eth_pfc_conf *pfc_conf, int ret),
755 	rte_trace_point_emit_u16(port_id);
756 	rte_trace_point_emit_u32(pfc_conf->fc.high_water);
757 	rte_trace_point_emit_u32(pfc_conf->fc.low_water);
758 	rte_trace_point_emit_u16(pfc_conf->fc.pause_time);
759 	rte_trace_point_emit_u16(pfc_conf->fc.send_xon);
760 	rte_trace_point_emit_int(pfc_conf->fc.mode);
761 	rte_trace_point_emit_u8(pfc_conf->fc.mac_ctrl_frame_fwd);
762 	rte_trace_point_emit_u8(pfc_conf->fc.autoneg);
763 	rte_trace_point_emit_u8(pfc_conf->priority);
764 	rte_trace_point_emit_int(ret);
765 )
766 
767 RTE_TRACE_POINT(
768 	rte_ethdev_trace_priority_flow_ctrl_queue_info_get,
769 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
770 		const struct rte_eth_pfc_queue_info *pfc_queue_info, int ret),
771 	rte_trace_point_emit_u16(port_id);
772 	rte_trace_point_emit_u8(pfc_queue_info->tc_max);
773 	rte_trace_point_emit_int(pfc_queue_info->mode_capa);
774 	rte_trace_point_emit_int(ret);
775 )
776 
777 RTE_TRACE_POINT(
778 	rte_ethdev_trace_priority_flow_ctrl_queue_configure,
779 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
780 		const struct rte_eth_pfc_queue_conf *pfc_queue_conf, int ret),
781 	rte_trace_point_emit_u16(port_id);
782 	rte_trace_point_emit_int(pfc_queue_conf->mode);
783 	rte_trace_point_emit_u16(pfc_queue_conf->rx_pause.tx_qid);
784 	rte_trace_point_emit_u16(pfc_queue_conf->tx_pause.rx_qid);
785 	rte_trace_point_emit_int(ret);
786 )
787 
788 RTE_TRACE_POINT(
789 	rte_ethdev_trace_rss_reta_update,
790 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
791 		const struct rte_eth_rss_reta_entry64 *reta_conf,
792 		uint16_t reta_size, int ret),
793 	rte_trace_point_emit_u16(port_id);
794 	rte_trace_point_emit_u64(reta_conf->mask);
795 	rte_trace_point_emit_u16(reta_size);
796 	rte_trace_point_emit_int(ret);
797 )
798 
799 RTE_TRACE_POINT(
800 	rte_ethdev_trace_rss_reta_query,
801 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
802 		const struct rte_eth_rss_reta_entry64 *reta_conf,
803 		uint16_t reta_size, int ret),
804 	rte_trace_point_emit_u16(port_id);
805 	rte_trace_point_emit_u64(reta_conf->mask);
806 	rte_trace_point_emit_u16(reta_size);
807 	rte_trace_point_emit_int(ret);
808 )
809 
810 RTE_TRACE_POINT(
811 	rte_ethdev_trace_rss_hash_update,
812 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
813 		const struct rte_eth_rss_conf *rss_conf, int ret),
814 	rte_trace_point_emit_u16(port_id);
815 	rte_trace_point_emit_ptr(rss_conf->rss_key);
816 	rte_trace_point_emit_u8(rss_conf->rss_key_len);
817 	rte_trace_point_emit_u64(rss_conf->rss_hf);
818 	rte_trace_point_emit_int(ret);
819 )
820 
821 RTE_TRACE_POINT(
822 	rte_ethdev_trace_rss_hash_conf_get,
823 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
824 		const struct rte_eth_rss_conf *rss_conf, int ret),
825 	rte_trace_point_emit_u16(port_id);
826 	rte_trace_point_emit_ptr(rss_conf->rss_key);
827 	rte_trace_point_emit_u8(rss_conf->rss_key_len);
828 	rte_trace_point_emit_u64(rss_conf->rss_hf);
829 	rte_trace_point_emit_int(ret);
830 )
831 
832 RTE_TRACE_POINT(
833 	rte_ethdev_trace_udp_tunnel_port_add,
834 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
835 		const struct rte_eth_udp_tunnel *tunnel_udp, int ret),
836 	rte_trace_point_emit_u16(port_id);
837 	rte_trace_point_emit_u16(tunnel_udp->udp_port);
838 	rte_trace_point_emit_u8(tunnel_udp->prot_type);
839 	rte_trace_point_emit_int(ret);
840 )
841 
842 RTE_TRACE_POINT(
843 	rte_ethdev_trace_udp_tunnel_port_delete,
844 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
845 		const struct rte_eth_udp_tunnel *tunnel_udp, int ret),
846 	rte_trace_point_emit_u16(port_id);
847 	rte_trace_point_emit_u16(tunnel_udp->udp_port);
848 	rte_trace_point_emit_u8(tunnel_udp->prot_type);
849 	rte_trace_point_emit_int(ret);
850 )
851 
852 RTE_TRACE_POINT(
853 	rte_eth_trace_led_on,
854 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int ret),
855 	rte_trace_point_emit_u16(port_id);
856 	rte_trace_point_emit_int(ret);
857 )
858 
859 RTE_TRACE_POINT(
860 	rte_eth_trace_led_off,
861 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int ret),
862 	rte_trace_point_emit_u16(port_id);
863 	rte_trace_point_emit_int(ret);
864 )
865 
866 RTE_TRACE_POINT(
867 	rte_eth_trace_fec_get_capability,
868 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
869 		const struct rte_eth_fec_capa *speed_fec_capa,
870 		unsigned int num, int ret),
871 	rte_trace_point_emit_u16(port_id);
872 	rte_trace_point_emit_u32(speed_fec_capa->speed);
873 	rte_trace_point_emit_u32(speed_fec_capa->capa);
874 	rte_trace_point_emit_u32(num);
875 	rte_trace_point_emit_int(ret);
876 )
877 
878 RTE_TRACE_POINT(
879 	rte_eth_trace_fec_get,
880 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const uint32_t *fec_capa,
881 		int ret),
882 	rte_trace_point_emit_u16(port_id);
883 	rte_trace_point_emit_ptr(fec_capa);
884 	rte_trace_point_emit_int(ret);
885 )
886 
887 RTE_TRACE_POINT(
888 	rte_eth_trace_fec_set,
889 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t fec_capa, int ret),
890 	rte_trace_point_emit_u16(port_id);
891 	rte_trace_point_emit_u32(fec_capa);
892 	rte_trace_point_emit_int(ret);
893 )
894 
895 RTE_TRACE_POINT(
896 	rte_ethdev_trace_mac_addr_add,
897 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
898 		const struct rte_ether_addr *addr, uint32_t pool, int ret),
899 	uint8_t len = RTE_ETHER_ADDR_LEN;
900 
901 	rte_trace_point_emit_u16(port_id);
902 	rte_trace_point_emit_blob(addr->addr_bytes, len);
903 	rte_trace_point_emit_u32(pool);
904 	rte_trace_point_emit_int(ret);
905 )
906 
907 RTE_TRACE_POINT(
908 	rte_ethdev_trace_mac_addr_remove,
909 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
910 		const struct rte_ether_addr *addr),
911 	uint8_t len = RTE_ETHER_ADDR_LEN;
912 
913 	rte_trace_point_emit_u16(port_id);
914 	rte_trace_point_emit_blob(addr->addr_bytes, len);
915 )
916 
917 RTE_TRACE_POINT(
918 	rte_ethdev_trace_default_mac_addr_set,
919 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
920 		const struct rte_ether_addr *addr),
921 	uint8_t len = RTE_ETHER_ADDR_LEN;
922 
923 	rte_trace_point_emit_u16(port_id);
924 	rte_trace_point_emit_blob(addr->addr_bytes, len);
925 )
926 
927 RTE_TRACE_POINT(
928 	rte_ethdev_trace_uc_hash_table_set,
929 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint8_t on, int ret),
930 	rte_trace_point_emit_u16(port_id);
931 	rte_trace_point_emit_u8(on);
932 	rte_trace_point_emit_int(ret);
933 )
934 
935 RTE_TRACE_POINT(
936 	rte_ethdev_trace_uc_all_hash_table_set,
937 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint8_t on, int ret),
938 	rte_trace_point_emit_u16(port_id);
939 	rte_trace_point_emit_u8(on);
940 	rte_trace_point_emit_int(ret);
941 )
942 
943 RTE_TRACE_POINT(
944 	rte_eth_trace_set_queue_rate_limit,
945 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_idx,
946 		uint16_t tx_rate, int ret),
947 	rte_trace_point_emit_u16(port_id);
948 	rte_trace_point_emit_u16(queue_idx);
949 	rte_trace_point_emit_u16(tx_rate);
950 	rte_trace_point_emit_int(ret);
951 )
952 
953 RTE_TRACE_POINT(
954 	rte_eth_trace_rx_avail_thresh_set,
955 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id,
956 		uint8_t avail_thresh, int ret),
957 	rte_trace_point_emit_u16(port_id);
958 	rte_trace_point_emit_u16(queue_id);
959 	rte_trace_point_emit_u8(avail_thresh);
960 	rte_trace_point_emit_int(ret);
961 )
962 
963 RTE_TRACE_POINT(
964 	rte_eth_trace_rx_avail_thresh_query,
965 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id, int ret),
966 	rte_trace_point_emit_u16(port_id);
967 	rte_trace_point_emit_u16(queue_id);
968 	rte_trace_point_emit_int(ret);
969 )
970 
971 RTE_TRACE_POINT(
972 	rte_ethdev_trace_callback_register,
973 	RTE_TRACE_POINT_ARGS(uint16_t port_id, enum rte_eth_event_type event,
974 		rte_eth_dev_cb_fn cb_fn, const void *cb_arg),
975 	rte_trace_point_emit_u16(port_id);
976 	rte_trace_point_emit_int(event);
977 	rte_trace_point_emit_ptr(cb_fn);
978 	rte_trace_point_emit_ptr(cb_arg);
979 )
980 
981 RTE_TRACE_POINT(
982 	rte_ethdev_trace_callback_unregister,
983 	RTE_TRACE_POINT_ARGS(uint16_t port_id, enum rte_eth_event_type event,
984 		rte_eth_dev_cb_fn cb_fn, const void *cb_arg, int ret),
985 	rte_trace_point_emit_u16(port_id);
986 	rte_trace_point_emit_int(event);
987 	rte_trace_point_emit_ptr(cb_fn);
988 	rte_trace_point_emit_ptr(cb_arg);
989 	rte_trace_point_emit_int(ret);
990 )
991 
992 RTE_TRACE_POINT(
993 	rte_ethdev_trace_rx_intr_ctl,
994 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t qid, int epfd, int op,
995 		const void *data, int rc),
996 	rte_trace_point_emit_u16(port_id);
997 	rte_trace_point_emit_u16(qid);
998 	rte_trace_point_emit_int(epfd);
999 	rte_trace_point_emit_int(op);
1000 	rte_trace_point_emit_ptr(data);
1001 	rte_trace_point_emit_int(rc);
1002 )
1003 
1004 RTE_TRACE_POINT(
1005 	rte_ethdev_trace_rx_intr_ctl_q_get_fd,
1006 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id, int fd),
1007 	rte_trace_point_emit_u16(port_id);
1008 	rte_trace_point_emit_u16(queue_id);
1009 	rte_trace_point_emit_int(fd);
1010 )
1011 
1012 RTE_TRACE_POINT(
1013 	rte_ethdev_trace_rx_intr_ctl_q,
1014 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id, int epfd,
1015 		int op, const void *data, int rc),
1016 	rte_trace_point_emit_u16(port_id);
1017 	rte_trace_point_emit_u16(queue_id);
1018 	rte_trace_point_emit_int(epfd);
1019 	rte_trace_point_emit_int(op);
1020 	rte_trace_point_emit_ptr(data);
1021 	rte_trace_point_emit_int(rc);
1022 )
1023 
1024 RTE_TRACE_POINT(
1025 	rte_eth_trace_add_rx_callback,
1026 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id,
1027 		rte_rx_callback_fn fn, void *user_param,
1028 		const struct rte_eth_rxtx_callback *cb),
1029 	rte_trace_point_emit_u16(port_id);
1030 	rte_trace_point_emit_u16(queue_id);
1031 	rte_trace_point_emit_ptr(fn);
1032 	rte_trace_point_emit_ptr(user_param);
1033 	rte_trace_point_emit_ptr(cb);
1034 )
1035 
1036 RTE_TRACE_POINT(
1037 	rte_eth_trace_add_first_rx_callback,
1038 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id,
1039 		rte_rx_callback_fn fn, const void *user_param,
1040 		const struct rte_eth_rxtx_callback *cb),
1041 	rte_trace_point_emit_u16(port_id);
1042 	rte_trace_point_emit_u16(queue_id);
1043 	rte_trace_point_emit_ptr(fn);
1044 	rte_trace_point_emit_ptr(user_param);
1045 	rte_trace_point_emit_ptr(cb);
1046 )
1047 
1048 RTE_TRACE_POINT(
1049 	rte_eth_trace_add_tx_callback,
1050 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id,
1051 		rte_tx_callback_fn fn, const void *user_param,
1052 		const struct rte_eth_rxtx_callback *cb),
1053 	rte_trace_point_emit_u16(port_id);
1054 	rte_trace_point_emit_u16(queue_id);
1055 	rte_trace_point_emit_ptr(fn);
1056 	rte_trace_point_emit_ptr(user_param);
1057 	rte_trace_point_emit_ptr(cb);
1058 )
1059 
1060 RTE_TRACE_POINT(
1061 	rte_eth_trace_remove_rx_callback,
1062 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id,
1063 		const struct rte_eth_rxtx_callback *user_cb, int ret),
1064 	rte_trace_point_emit_u16(port_id);
1065 	rte_trace_point_emit_u16(queue_id);
1066 	rte_trace_point_emit_ptr(user_cb);
1067 	rte_trace_point_emit_int(ret);
1068 )
1069 
1070 RTE_TRACE_POINT(
1071 	rte_eth_trace_remove_tx_callback,
1072 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id,
1073 		const struct rte_eth_rxtx_callback *user_cb, int ret),
1074 	rte_trace_point_emit_u16(port_id);
1075 	rte_trace_point_emit_u16(queue_id);
1076 	rte_trace_point_emit_ptr(user_cb);
1077 	rte_trace_point_emit_int(ret);
1078 )
1079 
1080 RTE_TRACE_POINT(
1081 	rte_eth_trace_rx_queue_info_get,
1082 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id,
1083 		const struct rte_eth_rxq_info *qinfo),
1084 	rte_trace_point_emit_u16(port_id);
1085 	rte_trace_point_emit_u16(queue_id);
1086 	rte_trace_point_emit_ptr(qinfo->mp);
1087 	rte_trace_point_emit_u8(qinfo->conf.rx_drop_en);
1088 	rte_trace_point_emit_u64(qinfo->conf.offloads);
1089 	rte_trace_point_emit_u8(qinfo->scattered_rx);
1090 	rte_trace_point_emit_u8(qinfo->queue_state);
1091 	rte_trace_point_emit_u16(qinfo->nb_desc);
1092 	rte_trace_point_emit_u16(qinfo->rx_buf_size);
1093 )
1094 
1095 RTE_TRACE_POINT(
1096 	rte_eth_trace_tx_queue_info_get,
1097 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id,
1098 		const struct rte_eth_txq_info *qinfo),
1099 	rte_trace_point_emit_u16(port_id);
1100 	rte_trace_point_emit_u16(queue_id);
1101 	rte_trace_point_emit_u16(qinfo->nb_desc);
1102 	rte_trace_point_emit_u8(qinfo->queue_state);
1103 )
1104 
1105 RTE_TRACE_POINT(
1106 	rte_eth_trace_rx_burst_mode_get,
1107 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id,
1108 		const struct rte_eth_burst_mode *mode, int ret),
1109 	rte_trace_point_emit_u16(port_id);
1110 	rte_trace_point_emit_u16(queue_id);
1111 	rte_trace_point_emit_u64(mode->flags);
1112 	rte_trace_point_emit_int(ret);
1113 )
1114 
1115 RTE_TRACE_POINT(
1116 	rte_eth_trace_tx_burst_mode_get,
1117 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id,
1118 		const struct rte_eth_burst_mode *mode, int ret),
1119 	rte_trace_point_emit_u16(port_id);
1120 	rte_trace_point_emit_u16(queue_id);
1121 	rte_trace_point_emit_u64(mode->flags);
1122 	rte_trace_point_emit_int(ret);
1123 )
1124 
1125 RTE_TRACE_POINT(
1126 	rte_eth_trace_get_monitor_addr,
1127 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id,
1128 		const struct rte_power_monitor_cond *pmc, int ret),
1129 	rte_trace_point_emit_u16(port_id);
1130 	rte_trace_point_emit_u16(queue_id);
1131 	rte_trace_point_emit_ptr(pmc->addr);
1132 	rte_trace_point_emit_u8(pmc->size);
1133 	rte_trace_point_emit_int(ret);
1134 )
1135 
1136 RTE_TRACE_POINT(
1137 	rte_ethdev_trace_set_mc_addr_list,
1138 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1139 		const struct rte_ether_addr *mc_addr_set, uint32_t nb_mc_addr,
1140 		int ret),
1141 	uint8_t len = nb_mc_addr * RTE_ETHER_ADDR_LEN;
1142 
1143 	rte_trace_point_emit_u16(port_id);
1144 	rte_trace_point_emit_u32(nb_mc_addr);
1145 	rte_trace_point_emit_blob(mc_addr_set, len);
1146 	rte_trace_point_emit_int(ret);
1147 )
1148 
1149 RTE_TRACE_POINT(
1150 	rte_eth_trace_timesync_enable,
1151 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int ret),
1152 	rte_trace_point_emit_u16(port_id);
1153 	rte_trace_point_emit_int(ret);
1154 )
1155 
1156 RTE_TRACE_POINT(
1157 	rte_eth_trace_timesync_disable,
1158 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int ret),
1159 	rte_trace_point_emit_u16(port_id);
1160 	rte_trace_point_emit_int(ret);
1161 )
1162 
1163 RTE_TRACE_POINT(
1164 	rte_eth_trace_timesync_write_time,
1165 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const struct timespec *time,
1166 		int ret),
1167 	rte_trace_point_emit_u16(port_id);
1168 	rte_trace_point_emit_size_t(time->tv_sec);
1169 	rte_trace_point_emit_long(time->tv_nsec);
1170 	rte_trace_point_emit_int(ret);
1171 )
1172 
1173 RTE_TRACE_POINT(
1174 	rte_eth_trace_read_clock,
1175 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const uint64_t *clk, int ret),
1176 	uint64_t clk_v = *clk;
1177 
1178 	rte_trace_point_emit_u16(port_id);
1179 	rte_trace_point_emit_u64(clk_v);
1180 	rte_trace_point_emit_int(ret);
1181 )
1182 
1183 RTE_TRACE_POINT(
1184 	rte_ethdev_trace_get_reg_info,
1185 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1186 		const struct rte_dev_reg_info *info, int ret),
1187 	rte_trace_point_emit_u16(port_id);
1188 	rte_trace_point_emit_ptr(info->data);
1189 	rte_trace_point_emit_u32(info->offset);
1190 	rte_trace_point_emit_u32(info->length);
1191 	rte_trace_point_emit_u32(info->width);
1192 	rte_trace_point_emit_u32(info->version);
1193 	rte_trace_point_emit_int(ret);
1194 )
1195 
1196 RTE_TRACE_POINT(
1197 	rte_ethdev_trace_get_eeprom_length,
1198 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int ret),
1199 	rte_trace_point_emit_u16(port_id);
1200 	rte_trace_point_emit_int(ret);
1201 )
1202 
1203 RTE_TRACE_POINT(
1204 	rte_ethdev_trace_get_eeprom,
1205 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1206 		const struct rte_dev_eeprom_info *info, int ret),
1207 	rte_trace_point_emit_u16(port_id);
1208 	rte_trace_point_emit_ptr(info->data);
1209 	rte_trace_point_emit_u32(info->offset);
1210 	rte_trace_point_emit_u32(info->length);
1211 	rte_trace_point_emit_u32(info->magic);
1212 	rte_trace_point_emit_int(ret);
1213 )
1214 
1215 RTE_TRACE_POINT(
1216 	rte_ethdev_trace_set_eeprom,
1217 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1218 		const struct rte_dev_eeprom_info *info, int ret),
1219 	rte_trace_point_emit_u16(port_id);
1220 	rte_trace_point_emit_ptr(info->data);
1221 	rte_trace_point_emit_u32(info->offset);
1222 	rte_trace_point_emit_u32(info->length);
1223 	rte_trace_point_emit_u32(info->magic);
1224 	rte_trace_point_emit_int(ret);
1225 )
1226 
1227 RTE_TRACE_POINT(
1228 	rte_ethdev_trace_get_module_info,
1229 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1230 		const struct rte_eth_dev_module_info *modinfo, int ret),
1231 	rte_trace_point_emit_u16(port_id);
1232 	rte_trace_point_emit_u32(modinfo->type);
1233 	rte_trace_point_emit_u32(modinfo->eeprom_len);
1234 	rte_trace_point_emit_int(ret);
1235 )
1236 
1237 RTE_TRACE_POINT(
1238 	rte_ethdev_trace_get_module_eeprom,
1239 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1240 		const struct rte_dev_eeprom_info *info, int ret),
1241 	rte_trace_point_emit_u16(port_id);
1242 	rte_trace_point_emit_ptr(info->data);
1243 	rte_trace_point_emit_u32(info->offset);
1244 	rte_trace_point_emit_u32(info->length);
1245 	rte_trace_point_emit_u32(info->magic);
1246 	rte_trace_point_emit_int(ret);
1247 )
1248 
1249 RTE_TRACE_POINT(
1250 	rte_ethdev_trace_get_dcb_info,
1251 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1252 		const struct rte_eth_dcb_info *dcb_info, int ret),
1253 	uint8_t num_user_priorities = RTE_ETH_DCB_NUM_USER_PRIORITIES;
1254 	uint8_t num_tcs = RTE_ETH_DCB_NUM_TCS;
1255 
1256 	rte_trace_point_emit_u16(port_id);
1257 	rte_trace_point_emit_u8(dcb_info->nb_tcs);
1258 	rte_trace_point_emit_blob(dcb_info->prio_tc, num_user_priorities);
1259 	rte_trace_point_emit_blob(dcb_info->tc_bws, num_tcs);
1260 	rte_trace_point_emit_int(ret);
1261 )
1262 
1263 RTE_TRACE_POINT(
1264 	rte_ethdev_trace_adjust_nb_rx_tx_desc,
1265 	RTE_TRACE_POINT_ARGS(uint16_t port_id),
1266 	rte_trace_point_emit_u16(port_id);
1267 )
1268 
1269 RTE_TRACE_POINT(
1270 	rte_ethdev_trace_hairpin_capability_get,
1271 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1272 		const struct rte_eth_hairpin_cap *cap, int ret),
1273 	rte_trace_point_emit_u16(port_id);
1274 	rte_trace_point_emit_u16(cap->max_nb_queues);
1275 	rte_trace_point_emit_u16(cap->max_rx_2_tx);
1276 	rte_trace_point_emit_u16(cap->max_tx_2_rx);
1277 	rte_trace_point_emit_u16(cap->max_nb_desc);
1278 	rte_trace_point_emit_int(ret);
1279 )
1280 
1281 RTE_TRACE_POINT(
1282 	rte_ethdev_trace_pool_ops_supported,
1283 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const char *pool, int ret),
1284 	rte_trace_point_emit_u16(port_id);
1285 	rte_trace_point_emit_string(pool);
1286 	rte_trace_point_emit_int(ret);
1287 )
1288 
1289 RTE_TRACE_POINT(
1290 	rte_eth_trace_representor_info_get,
1291 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1292 		const struct rte_eth_representor_info *info, int ret),
1293 	rte_trace_point_emit_u16(port_id);
1294 	rte_trace_point_emit_ptr(info);
1295 	rte_trace_point_emit_int(ret);
1296 )
1297 
1298 RTE_TRACE_POINT(
1299 	rte_eth_trace_rx_metadata_negotiate,
1300 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint64_t features_val, int ret),
1301 	rte_trace_point_emit_u16(port_id);
1302 	rte_trace_point_emit_u64(features_val);
1303 	rte_trace_point_emit_int(ret);
1304 )
1305 
1306 RTE_TRACE_POINT(
1307 	rte_eth_trace_ip_reassembly_capability_get,
1308 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1309 		const struct rte_eth_ip_reassembly_params *capa, int ret),
1310 	rte_trace_point_emit_u16(port_id);
1311 	rte_trace_point_emit_u32(capa->timeout_ms);
1312 	rte_trace_point_emit_u16(capa->max_frags);
1313 	rte_trace_point_emit_u16(capa->flags);
1314 	rte_trace_point_emit_int(ret);
1315 )
1316 
1317 RTE_TRACE_POINT(
1318 	rte_eth_trace_ip_reassembly_conf_get,
1319 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1320 		const struct rte_eth_ip_reassembly_params *conf, int ret),
1321 	rte_trace_point_emit_u16(port_id);
1322 	rte_trace_point_emit_u32(conf->timeout_ms);
1323 	rte_trace_point_emit_u16(conf->max_frags);
1324 	rte_trace_point_emit_u16(conf->flags);
1325 	rte_trace_point_emit_int(ret);
1326 )
1327 
1328 RTE_TRACE_POINT(
1329 	rte_eth_trace_ip_reassembly_conf_set,
1330 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1331 		const struct rte_eth_ip_reassembly_params *conf, int ret),
1332 	rte_trace_point_emit_u16(port_id);
1333 	rte_trace_point_emit_u32(conf->timeout_ms);
1334 	rte_trace_point_emit_u16(conf->max_frags);
1335 	rte_trace_point_emit_u16(conf->flags);
1336 	rte_trace_point_emit_int(ret);
1337 )
1338 
1339 RTE_TRACE_POINT(
1340 	rte_eth_trace_buffer_split_get_supported_hdr_ptypes,
1341 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int supported_num,
1342 		uint32_t ptypes),
1343 	rte_trace_point_emit_u16(port_id);
1344 	rte_trace_point_emit_int(supported_num);
1345 	rte_trace_point_emit_u32(ptypes);
1346 )
1347 
1348 RTE_TRACE_POINT(
1349 	rte_eth_trace_cman_info_get,
1350 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1351 		const struct rte_eth_cman_info *info, int ret),
1352 	rte_trace_point_emit_u16(port_id);
1353 	rte_trace_point_emit_u64(info->modes_supported);
1354 	rte_trace_point_emit_u64(info->objs_supported);
1355 	rte_trace_point_emit_int(ret);
1356 )
1357 
1358 RTE_TRACE_POINT(
1359 	rte_eth_trace_cman_config_init,
1360 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1361 		const struct rte_eth_cman_config *config, int ret),
1362 	rte_trace_point_emit_u16(port_id);
1363 	rte_trace_point_emit_int(config->obj);
1364 	rte_trace_point_emit_int(config->mode);
1365 	rte_trace_point_emit_int(ret);
1366 )
1367 
1368 RTE_TRACE_POINT(
1369 	rte_eth_trace_cman_config_set,
1370 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1371 		const struct rte_eth_cman_config *config, int ret),
1372 	rte_trace_point_emit_u16(port_id);
1373 	rte_trace_point_emit_int(config->obj);
1374 	rte_trace_point_emit_int(config->mode);
1375 	rte_trace_point_emit_int(ret);
1376 )
1377 
1378 RTE_TRACE_POINT(
1379 	rte_eth_trace_cman_config_get,
1380 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1381 		const struct rte_eth_cman_config *config, int ret),
1382 	rte_trace_point_emit_u16(port_id);
1383 	rte_trace_point_emit_int(config->obj);
1384 	rte_trace_point_emit_int(config->mode);
1385 	rte_trace_point_emit_int(ret);
1386 )
1387 
1388 RTE_TRACE_POINT(
1389 	rte_eth_trace_count_aggr_ports,
1390 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int ret),
1391 	rte_trace_point_emit_u16(port_id);
1392 	rte_trace_point_emit_int(ret);
1393 )
1394 
1395 RTE_TRACE_POINT(
1396 	rte_eth_trace_map_aggr_tx_affinity,
1397 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t tx_queue_id,
1398 			     uint8_t affinity, int ret),
1399 	rte_trace_point_emit_u16(port_id);
1400 	rte_trace_point_emit_u16(tx_queue_id);
1401 	rte_trace_point_emit_u8(affinity);
1402 	rte_trace_point_emit_int(ret);
1403 )
1404 
1405 RTE_TRACE_POINT(
1406 	rte_flow_trace_dynf_metadata_register,
1407 	RTE_TRACE_POINT_ARGS(int offset, uint64_t flag),
1408 	rte_trace_point_emit_int(offset);
1409 	rte_trace_point_emit_u64(flag);
1410 )
1411 
1412 RTE_TRACE_POINT(
1413 	rte_flow_trace_validate,
1414 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1415 		const struct rte_flow_attr *attr,
1416 		const struct rte_flow_item *pattern,
1417 		const struct rte_flow_action *actions, int ret),
1418 	rte_trace_point_emit_u16(port_id);
1419 	rte_trace_point_emit_u32(attr->group);
1420 	rte_trace_point_emit_u32(attr->priority);
1421 	rte_trace_point_emit_ptr(pattern);
1422 	rte_trace_point_emit_ptr(actions);
1423 	rte_trace_point_emit_int(ret);
1424 )
1425 
1426 RTE_TRACE_POINT(
1427 	rte_flow_trace_flush,
1428 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int ret),
1429 	rte_trace_point_emit_u16(port_id);
1430 	rte_trace_point_emit_int(ret);
1431 )
1432 
1433 RTE_TRACE_POINT(
1434 	rte_flow_trace_conv,
1435 	RTE_TRACE_POINT_ARGS(enum rte_flow_conv_op op, const void *dst,
1436 		size_t size, const void *src, int ret),
1437 	rte_trace_point_emit_int(op);
1438 	rte_trace_point_emit_ptr(dst);
1439 	rte_trace_point_emit_size_t(size);
1440 	rte_trace_point_emit_ptr(src);
1441 	rte_trace_point_emit_int(ret);
1442 )
1443 
1444 RTE_TRACE_POINT(
1445 	rte_flow_trace_copy,
1446 	RTE_TRACE_POINT_ARGS(struct rte_flow_desc *fd, size_t len,
1447 		const struct rte_flow_attr *attr,
1448 		const struct rte_flow_item *items,
1449 		const struct rte_flow_action *actions, int ret),
1450 	rte_trace_point_emit_ptr(fd);
1451 	rte_trace_point_emit_size_t(len);
1452 	rte_trace_point_emit_u32(attr->group);
1453 	rte_trace_point_emit_u32(attr->priority);
1454 	rte_trace_point_emit_ptr(items);
1455 	rte_trace_point_emit_ptr(actions);
1456 	rte_trace_point_emit_int(ret);
1457 )
1458 
1459 RTE_TRACE_POINT(
1460 	rte_flow_trace_tunnel_decap_set,
1461 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1462 		const struct rte_flow_tunnel *tunnel,
1463 		struct rte_flow_action **actions,
1464 		const uint32_t *num_of_actions, int ret),
1465 	rte_trace_point_emit_u16(port_id);
1466 	rte_trace_point_emit_ptr(tunnel);
1467 	rte_trace_point_emit_ptr(actions);
1468 	rte_trace_point_emit_ptr(num_of_actions);
1469 	rte_trace_point_emit_int(ret);
1470 )
1471 
1472 RTE_TRACE_POINT(
1473 	rte_flow_trace_tunnel_match,
1474 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1475 		const struct rte_flow_tunnel *tunnel,
1476 		struct rte_flow_item **items,
1477 		const uint32_t *num_of_items, int ret),
1478 	rte_trace_point_emit_u16(port_id);
1479 	rte_trace_point_emit_ptr(tunnel);
1480 	rte_trace_point_emit_ptr(items);
1481 	rte_trace_point_emit_ptr(num_of_items);
1482 	rte_trace_point_emit_int(ret);
1483 )
1484 
1485 RTE_TRACE_POINT(
1486 	rte_flow_trace_tunnel_action_decap_release,
1487 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1488 		const struct rte_flow_action *actions, uint32_t num_of_actions,
1489 		int ret),
1490 	rte_trace_point_emit_u16(port_id);
1491 	rte_trace_point_emit_ptr(actions);
1492 	rte_trace_point_emit_u32(num_of_actions);
1493 	rte_trace_point_emit_int(ret);
1494 )
1495 
1496 RTE_TRACE_POINT(
1497 	rte_flow_trace_tunnel_item_release,
1498 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1499 		const struct rte_flow_item *items, uint32_t num_of_items,
1500 		int ret),
1501 	rte_trace_point_emit_u16(port_id);
1502 	rte_trace_point_emit_ptr(items);
1503 	rte_trace_point_emit_u32(num_of_items);
1504 	rte_trace_point_emit_int(ret);
1505 )
1506 
1507 RTE_TRACE_POINT(
1508 	rte_flow_trace_flex_item_create,
1509 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1510 		const struct rte_flow_item_flex_conf *conf,
1511 		const struct rte_flow_item_flex_handle *handle),
1512 	rte_trace_point_emit_u16(port_id);
1513 	rte_trace_point_emit_int(conf->tunnel);
1514 	rte_trace_point_emit_int(conf->nb_samples);
1515 	rte_trace_point_emit_int(conf->nb_inputs);
1516 	rte_trace_point_emit_int(conf->nb_outputs);
1517 	rte_trace_point_emit_ptr(handle);
1518 )
1519 
1520 RTE_TRACE_POINT(
1521 	rte_flow_trace_flex_item_release,
1522 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1523 		const struct rte_flow_item_flex_handle *handle, int ret),
1524 	rte_trace_point_emit_u16(port_id);
1525 	rte_trace_point_emit_ptr(handle);
1526 	rte_trace_point_emit_int(ret);
1527 )
1528 
1529 RTE_TRACE_POINT(
1530 	rte_flow_trace_info_get,
1531 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1532 		const struct rte_flow_port_info *port_info,
1533 		const struct rte_flow_queue_info *queue_info, int ret),
1534 	rte_trace_point_emit_u16(port_id);
1535 	rte_trace_point_emit_u32(port_info->max_nb_queues);
1536 	rte_trace_point_emit_u32(port_info->max_nb_counters);
1537 	rte_trace_point_emit_u32(port_info->max_nb_aging_objects);
1538 	rte_trace_point_emit_u32(port_info->max_nb_meters);
1539 	rte_trace_point_emit_u32(port_info->max_nb_conn_tracks);
1540 	rte_trace_point_emit_u32(port_info->supported_flags);
1541 	rte_trace_point_emit_ptr(queue_info);
1542 	rte_trace_point_emit_int(ret);
1543 )
1544 
1545 RTE_TRACE_POINT(
1546 	rte_flow_trace_configure,
1547 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1548 		const struct rte_flow_port_attr *port_attr,
1549 		uint16_t nb_queue,
1550 		const struct rte_flow_queue_attr **queue_attr, int ret),
1551 	rte_trace_point_emit_u16(port_id);
1552 	rte_trace_point_emit_u32(port_attr->nb_counters);
1553 	rte_trace_point_emit_u32(port_attr->nb_aging_objects);
1554 	rte_trace_point_emit_u32(port_attr->nb_meters);
1555 	rte_trace_point_emit_u32(port_attr->nb_conn_tracks);
1556 	rte_trace_point_emit_u32(port_attr->flags);
1557 	rte_trace_point_emit_u16(nb_queue);
1558 	rte_trace_point_emit_ptr(queue_attr);
1559 	rte_trace_point_emit_int(ret);
1560 )
1561 
1562 RTE_TRACE_POINT(
1563 	rte_flow_trace_pattern_template_create,
1564 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1565 		const struct rte_flow_pattern_template_attr *template_attr,
1566 		const struct rte_flow_item *pattern, const void *tmplate),
1567 	uint8_t relaxed_matching = template_attr->relaxed_matching;
1568 	uint8_t ingress = template_attr->ingress;
1569 	uint8_t egress = template_attr->egress;
1570 	uint8_t transfer = template_attr->transfer;
1571 
1572 	rte_trace_point_emit_u16(port_id);
1573 	rte_trace_point_emit_ptr(template_attr);
1574 	rte_trace_point_emit_u8(relaxed_matching);
1575 	rte_trace_point_emit_u8(ingress);
1576 	rte_trace_point_emit_u8(egress);
1577 	rte_trace_point_emit_u8(transfer);
1578 	rte_trace_point_emit_ptr(pattern);
1579 	rte_trace_point_emit_ptr(tmplate);
1580 )
1581 
1582 RTE_TRACE_POINT(
1583 	rte_flow_trace_pattern_template_destroy,
1584 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1585 		const struct rte_flow_pattern_template *pattern_template,
1586 		int ret),
1587 	rte_trace_point_emit_u16(port_id);
1588 	rte_trace_point_emit_ptr(pattern_template);
1589 	rte_trace_point_emit_int(ret);
1590 )
1591 
1592 RTE_TRACE_POINT(
1593 	rte_flow_trace_actions_template_create,
1594 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1595 		const struct rte_flow_actions_template_attr *template_attr,
1596 		const struct rte_flow_action *actions,
1597 		const struct rte_flow_action *masks, const void *tmplate),
1598 	uint8_t ingress = template_attr->ingress;
1599 	uint8_t egress = template_attr->egress;
1600 	uint8_t transfer = template_attr->transfer;
1601 
1602 	rte_trace_point_emit_u16(port_id);
1603 	rte_trace_point_emit_ptr(template_attr);
1604 	rte_trace_point_emit_u8(ingress);
1605 	rte_trace_point_emit_u8(egress);
1606 	rte_trace_point_emit_u8(transfer);
1607 	rte_trace_point_emit_ptr(actions);
1608 	rte_trace_point_emit_ptr(masks);
1609 	rte_trace_point_emit_ptr(tmplate);
1610 )
1611 
1612 RTE_TRACE_POINT(
1613 	rte_flow_trace_actions_template_destroy,
1614 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1615 		const struct rte_flow_actions_template *actions_template,
1616 		int ret),
1617 	rte_trace_point_emit_u16(port_id);
1618 	rte_trace_point_emit_ptr(actions_template);
1619 	rte_trace_point_emit_int(ret);
1620 )
1621 
1622 RTE_TRACE_POINT(
1623 	rte_flow_trace_template_table_create,
1624 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1625 		const struct rte_flow_template_table_attr *table_attr,
1626 		struct rte_flow_pattern_template **pattern_templates,
1627 		uint8_t nb_pattern_templates,
1628 		struct rte_flow_actions_template **actions_templates,
1629 		uint8_t nb_actions_templates,
1630 		const struct rte_flow_template_table *table),
1631 	uint8_t ingress = table_attr->flow_attr.ingress;
1632 	uint8_t egress = table_attr->flow_attr.egress;
1633 	uint8_t transfer = table_attr->flow_attr.transfer;
1634 
1635 	rte_trace_point_emit_u16(port_id);
1636 	rte_trace_point_emit_u32(table_attr->nb_flows);
1637 	rte_trace_point_emit_u32(table_attr->flow_attr.group);
1638 	rte_trace_point_emit_u32(table_attr->flow_attr.priority);
1639 	rte_trace_point_emit_u8(ingress);
1640 	rte_trace_point_emit_u8(egress);
1641 	rte_trace_point_emit_u8(transfer);
1642 	rte_trace_point_emit_ptr(pattern_templates);
1643 	rte_trace_point_emit_u8(nb_pattern_templates);
1644 	rte_trace_point_emit_ptr(actions_templates);
1645 	rte_trace_point_emit_u8(nb_actions_templates);
1646 	rte_trace_point_emit_ptr(table);
1647 )
1648 
1649 RTE_TRACE_POINT(
1650 	rte_flow_trace_template_table_destroy,
1651 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1652 		const struct rte_flow_template_table *template_table, int ret),
1653 	rte_trace_point_emit_u16(port_id);
1654 	rte_trace_point_emit_ptr(template_table);
1655 	rte_trace_point_emit_int(ret);
1656 )
1657 
1658 RTE_TRACE_POINT(
1659 	rte_flow_trace_async_destroy,
1660 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
1661 		const struct rte_flow_op_attr *op_attr,
1662 		const struct rte_flow *flow, const void *user_data, int ret),
1663 	rte_trace_point_emit_u16(port_id);
1664 	rte_trace_point_emit_u32(queue_id);
1665 	rte_trace_point_emit_ptr(op_attr);
1666 	rte_trace_point_emit_ptr(flow);
1667 	rte_trace_point_emit_ptr(user_data);
1668 	rte_trace_point_emit_int(ret);
1669 )
1670 
1671 RTE_TRACE_POINT(
1672 	rte_flow_trace_push,
1673 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id, int ret),
1674 	rte_trace_point_emit_u16(port_id);
1675 	rte_trace_point_emit_u32(queue_id);
1676 	rte_trace_point_emit_int(ret);
1677 )
1678 
1679 RTE_TRACE_POINT(
1680 	rte_mtr_trace_capabilities_get,
1681 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1682 		const struct rte_mtr_capabilities *cap, int ret),
1683 	rte_trace_point_emit_u16(port_id);
1684 	rte_trace_point_emit_ptr(cap);
1685 	rte_trace_point_emit_int(ret);
1686 )
1687 
1688 RTE_TRACE_POINT(
1689 	rte_mtr_trace_meter_profile_add,
1690 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1691 		uint32_t meter_profile_id,
1692 		const struct rte_mtr_meter_profile *profile, int ret),
1693 	rte_trace_point_emit_u16(port_id);
1694 	rte_trace_point_emit_u32(meter_profile_id);
1695 	rte_trace_point_emit_ptr(profile);
1696 	rte_trace_point_emit_int(ret);
1697 )
1698 
1699 RTE_TRACE_POINT(
1700 	rte_mtr_trace_meter_profile_delete,
1701 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1702 		uint32_t meter_profile_id, int ret),
1703 	rte_trace_point_emit_u16(port_id);
1704 	rte_trace_point_emit_u32(meter_profile_id);
1705 	rte_trace_point_emit_int(ret);
1706 )
1707 
1708 RTE_TRACE_POINT(
1709 	rte_mtr_trace_meter_profile_get,
1710 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1711 		uint32_t meter_profile_id, const void *ret),
1712 	rte_trace_point_emit_u16(port_id);
1713 	rte_trace_point_emit_u32(meter_profile_id);
1714 	rte_trace_point_emit_ptr(ret);
1715 )
1716 
1717 RTE_TRACE_POINT(
1718 	rte_mtr_trace_meter_policy_validate,
1719 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1720 		const struct rte_mtr_meter_policy_params *policy, int ret),
1721 	rte_trace_point_emit_u16(port_id);
1722 	rte_trace_point_emit_ptr(policy);
1723 	rte_trace_point_emit_int(ret);
1724 )
1725 
1726 RTE_TRACE_POINT(
1727 	rte_mtr_trace_meter_policy_add,
1728 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t policy_id,
1729 		const struct rte_mtr_meter_policy_params *policy, int ret),
1730 	rte_trace_point_emit_u16(port_id);
1731 	rte_trace_point_emit_u32(policy_id);
1732 	rte_trace_point_emit_ptr(policy);
1733 	rte_trace_point_emit_int(ret);
1734 )
1735 
1736 RTE_TRACE_POINT(
1737 	rte_mtr_trace_meter_policy_get,
1738 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t policy_id,
1739 		const void *ret),
1740 	rte_trace_point_emit_u16(port_id);
1741 	rte_trace_point_emit_u32(policy_id);
1742 	rte_trace_point_emit_ptr(ret);
1743 )
1744 
1745 RTE_TRACE_POINT(
1746 	rte_mtr_trace_meter_enable,
1747 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t mtr_id, int ret),
1748 	rte_trace_point_emit_u16(port_id);
1749 	rte_trace_point_emit_u32(mtr_id);
1750 	rte_trace_point_emit_int(ret);
1751 )
1752 
1753 RTE_TRACE_POINT(
1754 	rte_mtr_trace_meter_disable,
1755 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t mtr_id, int ret),
1756 	rte_trace_point_emit_u16(port_id);
1757 	rte_trace_point_emit_u32(mtr_id);
1758 	rte_trace_point_emit_int(ret);
1759 )
1760 
1761 RTE_TRACE_POINT(
1762 	rte_mtr_trace_meter_profile_update,
1763 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t mtr_id,
1764 		uint32_t meter_profile_id, int ret),
1765 	rte_trace_point_emit_u16(port_id);
1766 	rte_trace_point_emit_u32(mtr_id);
1767 	rte_trace_point_emit_u32(meter_profile_id);
1768 	rte_trace_point_emit_int(ret);
1769 )
1770 
1771 RTE_TRACE_POINT(
1772 	rte_mtr_trace_meter_policy_update,
1773 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t mtr_id,
1774 		uint32_t meter_policy_id, int ret),
1775 	rte_trace_point_emit_u16(port_id);
1776 	rte_trace_point_emit_u32(mtr_id);
1777 	rte_trace_point_emit_u32(meter_policy_id);
1778 	rte_trace_point_emit_int(ret);
1779 )
1780 
1781 RTE_TRACE_POINT(
1782 	rte_mtr_trace_meter_dscp_table_update,
1783 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t mtr_id,
1784 		enum rte_color *dscp_table, int ret),
1785 	rte_trace_point_emit_u16(port_id);
1786 	rte_trace_point_emit_u32(mtr_id);
1787 	rte_trace_point_emit_ptr(dscp_table);
1788 	rte_trace_point_emit_int(ret);
1789 )
1790 
1791 RTE_TRACE_POINT(
1792 	rte_mtr_trace_meter_vlan_table_update,
1793 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t mtr_id,
1794 		const enum rte_color *vlan_table, int ret),
1795 	rte_trace_point_emit_u16(port_id);
1796 	rte_trace_point_emit_u32(mtr_id);
1797 	rte_trace_point_emit_ptr(vlan_table);
1798 	rte_trace_point_emit_int(ret);
1799 )
1800 
1801 RTE_TRACE_POINT(
1802 	rte_mtr_trace_color_in_protocol_set,
1803 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t mtr_id,
1804 		enum rte_mtr_color_in_protocol proto, uint32_t priority,
1805 		int ret),
1806 	rte_trace_point_emit_u16(port_id);
1807 	rte_trace_point_emit_u32(mtr_id);
1808 	rte_trace_point_emit_int(proto);
1809 	rte_trace_point_emit_u32(priority);
1810 	rte_trace_point_emit_int(ret);
1811 )
1812 
1813 RTE_TRACE_POINT(
1814 	rte_mtr_trace_color_in_protocol_get,
1815 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t mtr_id, int ret),
1816 	rte_trace_point_emit_u16(port_id);
1817 	rte_trace_point_emit_u32(mtr_id);
1818 	rte_trace_point_emit_int(ret);
1819 )
1820 
1821 RTE_TRACE_POINT(
1822 	rte_mtr_trace_color_in_protocol_priority_get,
1823 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t mtr_id,
1824 		enum rte_mtr_color_in_protocol proto, int ret),
1825 	rte_trace_point_emit_u16(port_id);
1826 	rte_trace_point_emit_u32(mtr_id);
1827 	rte_trace_point_emit_int(proto);
1828 	rte_trace_point_emit_int(ret);
1829 )
1830 
1831 RTE_TRACE_POINT(
1832 	rte_mtr_trace_stats_update,
1833 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t mtr_id,
1834 		uint64_t stats_mask, int ret),
1835 	rte_trace_point_emit_u16(port_id);
1836 	rte_trace_point_emit_u32(mtr_id);
1837 	rte_trace_point_emit_u64(stats_mask);
1838 	rte_trace_point_emit_int(ret);
1839 )
1840 
1841 RTE_TRACE_POINT(
1842 	rte_mtr_trace_stats_read,
1843 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t mtr_id,
1844 		const struct rte_mtr_stats *stats, uint64_t stats_mask,
1845 		int clear, int ret),
1846 	rte_trace_point_emit_u16(port_id);
1847 	rte_trace_point_emit_u32(mtr_id);
1848 	rte_trace_point_emit_ptr(stats);
1849 	rte_trace_point_emit_u64(stats_mask);
1850 	rte_trace_point_emit_int(clear);
1851 	rte_trace_point_emit_int(ret);
1852 )
1853 
1854 RTE_TRACE_POINT(
1855 	rte_tm_trace_get_number_of_leaf_nodes,
1856 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t n_leaf_nodes),
1857 	rte_trace_point_emit_u16(port_id);
1858 	rte_trace_point_emit_u32(n_leaf_nodes);
1859 )
1860 
1861 RTE_TRACE_POINT(
1862 	rte_tm_trace_node_type_get,
1863 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t node_id, int is_leaf,
1864 		int ret),
1865 	rte_trace_point_emit_u16(port_id);
1866 	rte_trace_point_emit_u32(node_id);
1867 	rte_trace_point_emit_int(is_leaf);
1868 	rte_trace_point_emit_int(ret);
1869 )
1870 
1871 RTE_TRACE_POINT(
1872 	rte_tm_trace_capabilities_get,
1873 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
1874 		const struct rte_tm_capabilities *cap, int ret),
1875 	rte_trace_point_emit_u16(port_id);
1876 	rte_trace_point_emit_ptr(cap);
1877 	rte_trace_point_emit_int(ret);
1878 )
1879 
1880 RTE_TRACE_POINT(
1881 	rte_tm_trace_level_capabilities_get,
1882 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t level_id,
1883 		const struct rte_tm_level_capabilities *cap, int ret),
1884 	rte_trace_point_emit_u16(port_id);
1885 	rte_trace_point_emit_u32(level_id);
1886 	rte_trace_point_emit_ptr(cap);
1887 	rte_trace_point_emit_int(ret);
1888 )
1889 
1890 RTE_TRACE_POINT(
1891 	rte_tm_trace_node_capabilities_get,
1892 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t node_id,
1893 		const struct rte_tm_node_capabilities *cap, int ret),
1894 	rte_trace_point_emit_u16(port_id);
1895 	rte_trace_point_emit_u32(node_id);
1896 	rte_trace_point_emit_ptr(cap);
1897 	rte_trace_point_emit_int(ret);
1898 )
1899 
1900 RTE_TRACE_POINT(
1901 	rte_tm_trace_wred_profile_add,
1902 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t wred_profile_id,
1903 		const struct rte_tm_wred_params *profile, int ret),
1904 	rte_trace_point_emit_u16(port_id);
1905 	rte_trace_point_emit_u32(wred_profile_id);
1906 	rte_trace_point_emit_ptr(profile);
1907 	rte_trace_point_emit_int(ret);
1908 )
1909 
1910 RTE_TRACE_POINT(
1911 	rte_tm_trace_wred_profile_delete,
1912 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t wred_profile_id,
1913 		int ret),
1914 	rte_trace_point_emit_u16(port_id);
1915 	rte_trace_point_emit_u32(wred_profile_id);
1916 	rte_trace_point_emit_int(ret);
1917 )
1918 
1919 RTE_TRACE_POINT(
1920 	rte_tm_trace_shared_wred_context_add_update,
1921 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t shared_wred_context_id,
1922 		uint32_t wred_profile_id, int ret),
1923 	rte_trace_point_emit_u16(port_id);
1924 	rte_trace_point_emit_u32(shared_wred_context_id);
1925 	rte_trace_point_emit_u32(wred_profile_id);
1926 	rte_trace_point_emit_int(ret);
1927 )
1928 
1929 RTE_TRACE_POINT(
1930 	rte_tm_trace_shared_wred_context_delete,
1931 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t shared_wred_context_id,
1932 		int ret),
1933 	rte_trace_point_emit_u16(port_id);
1934 	rte_trace_point_emit_u32(shared_wred_context_id);
1935 	rte_trace_point_emit_int(ret);
1936 )
1937 
1938 RTE_TRACE_POINT(
1939 	rte_tm_trace_shaper_profile_add,
1940 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t shaper_profile_id,
1941 		const struct rte_tm_shaper_params *profile, int ret),
1942 	rte_trace_point_emit_u16(port_id);
1943 	rte_trace_point_emit_u32(shaper_profile_id);
1944 	rte_trace_point_emit_ptr(profile);
1945 	rte_trace_point_emit_int(ret);
1946 )
1947 
1948 RTE_TRACE_POINT(
1949 	rte_tm_trace_shaper_profile_delete,
1950 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t shaper_profile_id,
1951 		int ret),
1952 	rte_trace_point_emit_u16(port_id);
1953 	rte_trace_point_emit_u32(shaper_profile_id);
1954 	rte_trace_point_emit_int(ret);
1955 )
1956 
1957 RTE_TRACE_POINT(
1958 	rte_tm_trace_shared_shaper_add_update,
1959 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t shared_shaper_id,
1960 		uint32_t shaper_profile_id, int ret),
1961 	rte_trace_point_emit_u16(port_id);
1962 	rte_trace_point_emit_u32(shared_shaper_id);
1963 	rte_trace_point_emit_u32(shaper_profile_id);
1964 	rte_trace_point_emit_int(ret);
1965 )
1966 
1967 RTE_TRACE_POINT(
1968 	rte_tm_trace_shared_shaper_delete,
1969 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t shared_shaper_id,
1970 		int ret),
1971 	rte_trace_point_emit_u16(port_id);
1972 	rte_trace_point_emit_u32(shared_shaper_id);
1973 	rte_trace_point_emit_int(ret);
1974 )
1975 
1976 RTE_TRACE_POINT(
1977 	rte_tm_trace_node_add,
1978 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t node_id,
1979 		uint32_t parent_node_id, uint32_t priority,
1980 		uint32_t weight, uint32_t level_id,
1981 		const struct rte_tm_node_params *params, int ret),
1982 	rte_trace_point_emit_u16(port_id);
1983 	rte_trace_point_emit_u32(node_id);
1984 	rte_trace_point_emit_u32(parent_node_id);
1985 	rte_trace_point_emit_u32(priority);
1986 	rte_trace_point_emit_u32(weight);
1987 	rte_trace_point_emit_u32(level_id);
1988 	rte_trace_point_emit_ptr(params);
1989 	rte_trace_point_emit_int(ret);
1990 )
1991 
1992 RTE_TRACE_POINT(
1993 	rte_tm_trace_node_delete,
1994 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t node_id, int ret),
1995 	rte_trace_point_emit_u16(port_id);
1996 	rte_trace_point_emit_u32(node_id);
1997 	rte_trace_point_emit_int(ret);
1998 )
1999 
2000 RTE_TRACE_POINT(
2001 	rte_tm_trace_node_suspend,
2002 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t node_id, int ret),
2003 	rte_trace_point_emit_u16(port_id);
2004 	rte_trace_point_emit_u32(node_id);
2005 	rte_trace_point_emit_int(ret);
2006 )
2007 
2008 RTE_TRACE_POINT(
2009 	rte_tm_trace_node_resume,
2010 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t node_id, int ret),
2011 	rte_trace_point_emit_u16(port_id);
2012 	rte_trace_point_emit_u32(node_id);
2013 	rte_trace_point_emit_int(ret);
2014 )
2015 
2016 RTE_TRACE_POINT(
2017 	rte_tm_trace_hierarchy_commit,
2018 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int clear_on_fail, int ret),
2019 	rte_trace_point_emit_u16(port_id);
2020 	rte_trace_point_emit_int(clear_on_fail);
2021 	rte_trace_point_emit_int(ret);
2022 )
2023 
2024 RTE_TRACE_POINT(
2025 	rte_tm_trace_node_parent_update,
2026 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t node_id,
2027 		uint32_t parent_node_id, uint32_t priority,
2028 		uint32_t weight, int ret),
2029 	rte_trace_point_emit_u16(port_id);
2030 	rte_trace_point_emit_u32(node_id);
2031 	rte_trace_point_emit_u32(parent_node_id);
2032 	rte_trace_point_emit_u32(priority);
2033 	rte_trace_point_emit_u32(weight);
2034 	rte_trace_point_emit_int(ret);
2035 )
2036 
2037 RTE_TRACE_POINT(
2038 	rte_tm_trace_node_shaper_update,
2039 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t node_id,
2040 		uint32_t shaper_profile_id, int ret),
2041 	rte_trace_point_emit_u16(port_id);
2042 	rte_trace_point_emit_u32(node_id);
2043 	rte_trace_point_emit_u32(shaper_profile_id);
2044 	rte_trace_point_emit_int(ret);
2045 )
2046 
2047 RTE_TRACE_POINT(
2048 	rte_tm_trace_node_shared_shaper_update,
2049 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t node_id,
2050 		uint32_t shared_shaper_id, int add, int ret),
2051 	rte_trace_point_emit_u16(port_id);
2052 	rte_trace_point_emit_u32(node_id);
2053 	rte_trace_point_emit_u32(shared_shaper_id);
2054 	rte_trace_point_emit_int(add);
2055 	rte_trace_point_emit_int(ret);
2056 )
2057 
2058 RTE_TRACE_POINT(
2059 	rte_tm_trace_node_stats_update,
2060 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t node_id,
2061 		uint64_t stats_mask, int ret),
2062 	rte_trace_point_emit_u16(port_id);
2063 	rte_trace_point_emit_u32(node_id);
2064 	rte_trace_point_emit_u64(stats_mask);
2065 	rte_trace_point_emit_int(ret);
2066 )
2067 
2068 RTE_TRACE_POINT(
2069 	rte_tm_trace_node_wfq_weight_mode_update,
2070 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t node_id,
2071 		const int *wfq_weight_mode, uint32_t n_sp_priorities,
2072 		int ret),
2073 	rte_trace_point_emit_u16(port_id);
2074 	rte_trace_point_emit_u32(node_id);
2075 	rte_trace_point_emit_ptr(wfq_weight_mode);
2076 	rte_trace_point_emit_u32(n_sp_priorities);
2077 	rte_trace_point_emit_int(ret);
2078 )
2079 
2080 RTE_TRACE_POINT(
2081 	rte_tm_trace_node_cman_update,
2082 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t node_id,
2083 		enum rte_tm_cman_mode cman, int ret),
2084 	rte_trace_point_emit_u16(port_id);
2085 	rte_trace_point_emit_u32(node_id);
2086 	rte_trace_point_emit_int(cman);
2087 	rte_trace_point_emit_int(ret);
2088 )
2089 
2090 RTE_TRACE_POINT(
2091 	rte_tm_trace_node_wred_context_update,
2092 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t node_id,
2093 		uint32_t wred_profile_id, int ret),
2094 	rte_trace_point_emit_u16(port_id);
2095 	rte_trace_point_emit_u32(node_id);
2096 	rte_trace_point_emit_u32(wred_profile_id);
2097 	rte_trace_point_emit_int(ret);
2098 )
2099 
2100 RTE_TRACE_POINT(
2101 	rte_tm_trace_node_shared_wred_context_update,
2102 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t node_id,
2103 		uint32_t shared_wred_context_id, int add, int ret),
2104 	rte_trace_point_emit_u16(port_id);
2105 	rte_trace_point_emit_u32(node_id);
2106 	rte_trace_point_emit_u32(shared_wred_context_id);
2107 	rte_trace_point_emit_int(add);
2108 	rte_trace_point_emit_int(ret);
2109 )
2110 
2111 RTE_TRACE_POINT(
2112 	rte_tm_trace_node_stats_read,
2113 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t node_id,
2114 		const struct rte_tm_node_stats *stats,
2115 		uint64_t stats_mask, int clear, int ret),
2116 	rte_trace_point_emit_u16(port_id);
2117 	rte_trace_point_emit_u32(node_id);
2118 	rte_trace_point_emit_ptr(stats);
2119 	rte_trace_point_emit_u64(stats_mask);
2120 	rte_trace_point_emit_int(clear);
2121 	rte_trace_point_emit_int(ret);
2122 )
2123 
2124 RTE_TRACE_POINT(
2125 	rte_tm_trace_mark_vlan_dei,
2126 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int mark_green,
2127 		int mark_yellow, int mark_red, int ret),
2128 	rte_trace_point_emit_u16(port_id);
2129 	rte_trace_point_emit_int(mark_green);
2130 	rte_trace_point_emit_int(mark_yellow);
2131 	rte_trace_point_emit_int(mark_red);
2132 	rte_trace_point_emit_int(ret);
2133 )
2134 
2135 RTE_TRACE_POINT(
2136 	rte_tm_trace_mark_ip_ecn,
2137 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int mark_green,
2138 		int mark_yellow, int mark_red, int ret),
2139 	rte_trace_point_emit_u16(port_id);
2140 	rte_trace_point_emit_int(mark_green);
2141 	rte_trace_point_emit_int(mark_yellow);
2142 	rte_trace_point_emit_int(mark_red);
2143 	rte_trace_point_emit_int(ret);
2144 )
2145 
2146 RTE_TRACE_POINT(
2147 	rte_tm_trace_mark_ip_dscp,
2148 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int mark_green,
2149 		int mark_yellow, int mark_red, int ret),
2150 	rte_trace_point_emit_u16(port_id);
2151 	rte_trace_point_emit_int(mark_green);
2152 	rte_trace_point_emit_int(mark_yellow);
2153 	rte_trace_point_emit_int(mark_red);
2154 	rte_trace_point_emit_int(ret);
2155 )
2156 
2157 /* Fast path trace points */
2158 
2159 /* Called in loop in examples/qos_sched and examples/distributor */
2160 RTE_TRACE_POINT_FP(
2161 	rte_eth_trace_stats_get,
2162 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
2163 		const struct rte_eth_stats *stats, int ret),
2164 	rte_trace_point_emit_u16(port_id);
2165 	rte_trace_point_emit_u64(stats->rx_nombuf);
2166 	rte_trace_point_emit_u64(stats->ipackets);
2167 	rte_trace_point_emit_u64(stats->opackets);
2168 	rte_trace_point_emit_u64(stats->ibytes);
2169 	rte_trace_point_emit_u64(stats->obytes);
2170 	rte_trace_point_emit_u64(stats->imissed);
2171 	rte_trace_point_emit_u64(stats->ierrors);
2172 	rte_trace_point_emit_u64(stats->oerrors);
2173 	rte_trace_point_emit_int(ret);
2174 )
2175 
2176 /* Called in loop in examples/ip_pipeline */
2177 RTE_TRACE_POINT_FP(
2178 	rte_eth_trace_link_get,
2179 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const struct rte_eth_link *link),
2180 	uint8_t link_duplex = link->link_duplex;
2181 	uint8_t link_autoneg = link->link_autoneg;
2182 	uint8_t link_status = link->link_status;
2183 
2184 	rte_trace_point_emit_u16(port_id);
2185 	rte_trace_point_emit_u32(link->link_speed);
2186 	rte_trace_point_emit_u8(link_duplex);
2187 	rte_trace_point_emit_u8(link_autoneg);
2188 	rte_trace_point_emit_u8(link_status);
2189 )
2190 
2191 /* Called in loop in examples/ip_pipeline */
2192 RTE_TRACE_POINT_FP(
2193 	rte_eth_trace_link_speed_to_str,
2194 	RTE_TRACE_POINT_ARGS(uint32_t link_speed, const char *ret),
2195 	rte_trace_point_emit_u32(link_speed);
2196 	rte_trace_point_emit_string(ret);
2197 )
2198 
2199 /* Called in loop in examples/bond and examples/ethtool */
2200 RTE_TRACE_POINT_FP(
2201 	rte_eth_trace_macaddr_get,
2202 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
2203 		const struct rte_ether_addr *mac_addr),
2204 	uint8_t len = RTE_ETHER_ADDR_LEN;
2205 
2206 	rte_trace_point_emit_u16(port_id);
2207 	rte_trace_point_emit_blob(mac_addr->addr_bytes, len);
2208 )
2209 
2210 /* Called in loop in examples/ip_pipeline */
2211 RTE_TRACE_POINT_FP(
2212 	rte_ethdev_trace_get_mtu,
2213 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t mtu),
2214 	rte_trace_point_emit_u16(port_id);
2215 	rte_trace_point_emit_u16(mtu);
2216 )
2217 
2218 /* Called in loop in examples/l3fwd-power */
2219 RTE_TRACE_POINT_FP(
2220 	rte_ethdev_trace_rx_intr_enable,
2221 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id, int ret),
2222 	rte_trace_point_emit_u16(port_id);
2223 	rte_trace_point_emit_u16(queue_id);
2224 	rte_trace_point_emit_int(ret);
2225 )
2226 
2227 /* Called in loop in examples/l3fwd-power */
2228 RTE_TRACE_POINT_FP(
2229 	rte_ethdev_trace_rx_intr_disable,
2230 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint16_t queue_id, int ret),
2231 	rte_trace_point_emit_u16(port_id);
2232 	rte_trace_point_emit_u16(queue_id);
2233 	rte_trace_point_emit_int(ret);
2234 )
2235 
2236 /* Called in loop in examples/ptpclient */
2237 RTE_TRACE_POINT_FP(
2238 	rte_eth_trace_timesync_read_rx_timestamp,
2239 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const struct timespec *timestamp,
2240 		uint32_t flags, int ret),
2241 	rte_trace_point_emit_u16(port_id);
2242 	rte_trace_point_emit_size_t(timestamp->tv_sec);
2243 	rte_trace_point_emit_long(timestamp->tv_nsec);
2244 	rte_trace_point_emit_u32(flags);
2245 	rte_trace_point_emit_int(ret);
2246 )
2247 
2248 /* Called in loop in examples/ptpclient */
2249 RTE_TRACE_POINT_FP(
2250 	rte_eth_trace_timesync_read_tx_timestamp,
2251 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const struct timespec *timestamp,
2252 		int ret),
2253 	rte_trace_point_emit_u16(port_id);
2254 	rte_trace_point_emit_size_t(timestamp->tv_sec);
2255 	rte_trace_point_emit_long(timestamp->tv_nsec);
2256 	rte_trace_point_emit_int(ret);
2257 )
2258 
2259 /* Called in loop in examples/ptpclient */
2260 RTE_TRACE_POINT_FP(
2261 	rte_eth_trace_timesync_read_time,
2262 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const struct timespec *time,
2263 		int ret),
2264 	rte_trace_point_emit_u16(port_id);
2265 	rte_trace_point_emit_size_t(time->tv_sec);
2266 	rte_trace_point_emit_long(time->tv_nsec);
2267 	rte_trace_point_emit_int(ret);
2268 )
2269 
2270 /* Called in loop in examples/ptpclient */
2271 RTE_TRACE_POINT_FP(
2272 	rte_eth_trace_timesync_adjust_time,
2273 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int64_t delta, int ret),
2274 	rte_trace_point_emit_u16(port_id);
2275 	rte_trace_point_emit_i64(delta);
2276 	rte_trace_point_emit_int(ret);
2277 )
2278 
2279 /* Called in loop in app/test-flow-perf */
2280 RTE_TRACE_POINT_FP(
2281 	rte_flow_trace_create,
2282 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const struct rte_flow_attr *attr,
2283 		const struct rte_flow_item *pattern,
2284 		const struct rte_flow_action *actions,
2285 		const struct rte_flow *flow),
2286 	rte_trace_point_emit_u16(port_id);
2287 	rte_trace_point_emit_u32(attr->group);
2288 	rte_trace_point_emit_u32(attr->priority);
2289 	rte_trace_point_emit_ptr(pattern);
2290 	rte_trace_point_emit_ptr(actions);
2291 	rte_trace_point_emit_ptr(flow);
2292 )
2293 
2294 /* Called in loop in app/test-flow-perf */
2295 RTE_TRACE_POINT_FP(
2296 	rte_flow_trace_destroy,
2297 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const struct rte_flow *flow,
2298 		int ret),
2299 	rte_trace_point_emit_u16(port_id);
2300 	rte_trace_point_emit_ptr(flow);
2301 	rte_trace_point_emit_int(ret);
2302 )
2303 
2304 RTE_TRACE_POINT_FP(
2305 	rte_flow_trace_query,
2306 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const struct rte_flow *flow,
2307 		const struct rte_flow_action *action, const void *data,
2308 		int ret),
2309 	rte_trace_point_emit_u16(port_id);
2310 	rte_trace_point_emit_ptr(flow);
2311 	rte_trace_point_emit_int(action->type);
2312 	rte_trace_point_emit_ptr(action->conf);
2313 	rte_trace_point_emit_ptr(data);
2314 	rte_trace_point_emit_int(ret);
2315 )
2316 
2317 RTE_TRACE_POINT_FP(
2318 	rte_flow_trace_isolate,
2319 	RTE_TRACE_POINT_ARGS(uint16_t port_id, int set, int ret),
2320 	rte_trace_point_emit_u16(port_id);
2321 	rte_trace_point_emit_int(set);
2322 	rte_trace_point_emit_int(ret);
2323 )
2324 
2325 RTE_TRACE_POINT_FP(
2326 	rte_flow_trace_get_aged_flows,
2327 	RTE_TRACE_POINT_ARGS(uint16_t port_id, void **contexts,
2328 		uint32_t nb_contexts, int ret),
2329 	rte_trace_point_emit_u16(port_id);
2330 	rte_trace_point_emit_ptr(contexts);
2331 	rte_trace_point_emit_u32(nb_contexts);
2332 	rte_trace_point_emit_int(ret);
2333 )
2334 
2335 RTE_TRACE_POINT_FP(
2336 	rte_flow_trace_get_q_aged_flows,
2337 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
2338 		void **contexts, uint32_t nb_contexts, int ret),
2339 	rte_trace_point_emit_u16(port_id);
2340 	rte_trace_point_emit_u32(queue_id);
2341 	rte_trace_point_emit_ptr(contexts);
2342 	rte_trace_point_emit_u32(nb_contexts);
2343 	rte_trace_point_emit_int(ret);
2344 )
2345 
2346 RTE_TRACE_POINT_FP(
2347 	rte_flow_trace_action_handle_create,
2348 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
2349 		const struct rte_flow_indir_action_conf *conf,
2350 		const struct rte_flow_action *action,
2351 		const struct rte_flow_action_handle *handle),
2352 	uint8_t ingress = conf->ingress;
2353 	uint8_t egress = conf->egress;
2354 	uint8_t transfer = conf->transfer;
2355 
2356 	rte_trace_point_emit_u16(port_id);
2357 	rte_trace_point_emit_u8(ingress);
2358 	rte_trace_point_emit_u8(egress);
2359 	rte_trace_point_emit_u8(transfer);
2360 	rte_trace_point_emit_ptr(action);
2361 	rte_trace_point_emit_ptr(handle);
2362 )
2363 
2364 RTE_TRACE_POINT_FP(
2365 	rte_flow_trace_action_handle_destroy,
2366 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
2367 		const struct rte_flow_action_handle *handle, int ret),
2368 	rte_trace_point_emit_u16(port_id);
2369 	rte_trace_point_emit_ptr(handle);
2370 	rte_trace_point_emit_int(ret);
2371 )
2372 
2373 RTE_TRACE_POINT_FP(
2374 	rte_flow_trace_action_handle_update,
2375 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
2376 		const struct rte_flow_action_handle *handle,
2377 		const void *update, int ret),
2378 	rte_trace_point_emit_u16(port_id);
2379 	rte_trace_point_emit_ptr(handle);
2380 	rte_trace_point_emit_ptr(update);
2381 	rte_trace_point_emit_int(ret);
2382 )
2383 
2384 RTE_TRACE_POINT_FP(
2385 	rte_flow_trace_action_handle_query,
2386 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
2387 		const struct rte_flow_action_handle *handle,
2388 		const void *data, int ret),
2389 	rte_trace_point_emit_u16(port_id);
2390 	rte_trace_point_emit_ptr(handle);
2391 	rte_trace_point_emit_ptr(data);
2392 	rte_trace_point_emit_int(ret);
2393 )
2394 
2395 RTE_TRACE_POINT_FP(
2396 	rte_flow_trace_get_restore_info,
2397 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const struct rte_mbuf *m,
2398 		const struct rte_flow_restore_info *info, int ret),
2399 	rte_trace_point_emit_u16(port_id);
2400 	rte_trace_point_emit_ptr(m);
2401 	rte_trace_point_emit_ptr(info);
2402 	rte_trace_point_emit_int(ret);
2403 )
2404 
2405 RTE_TRACE_POINT_FP(
2406 	rte_flow_trace_pick_transfer_proxy,
2407 	RTE_TRACE_POINT_ARGS(uint16_t port_id, const uint16_t *proxy_port_id,
2408 		int ret),
2409 	rte_trace_point_emit_u16(port_id);
2410 	rte_trace_point_emit_ptr(proxy_port_id);
2411 	rte_trace_point_emit_int(ret);
2412 )
2413 
2414 RTE_TRACE_POINT_FP(
2415 	rte_flow_trace_async_create,
2416 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
2417 		const struct rte_flow_op_attr *op_attr,
2418 		const struct rte_flow_template_table *template_table,
2419 		const struct rte_flow_item *pattern,
2420 		uint8_t pattern_template_index,
2421 		const struct rte_flow_action *actions,
2422 		uint8_t actions_template_index,
2423 		const void *user_data, const struct rte_flow *flow),
2424 	rte_trace_point_emit_u16(port_id);
2425 	rte_trace_point_emit_u32(queue_id);
2426 	rte_trace_point_emit_ptr(op_attr);
2427 	rte_trace_point_emit_ptr(template_table);
2428 	rte_trace_point_emit_ptr(pattern);
2429 	rte_trace_point_emit_u8(pattern_template_index);
2430 	rte_trace_point_emit_ptr(actions);
2431 	rte_trace_point_emit_u8(actions_template_index);
2432 	rte_trace_point_emit_ptr(user_data);
2433 	rte_trace_point_emit_ptr(flow);
2434 )
2435 
2436 RTE_TRACE_POINT_FP(
2437 	rte_flow_trace_pull,
2438 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
2439 		const struct rte_flow_op_result *res, uint16_t n_res, int ret),
2440 	rte_trace_point_emit_u16(port_id);
2441 	rte_trace_point_emit_u32(queue_id);
2442 	rte_trace_point_emit_ptr(res);
2443 	rte_trace_point_emit_u16(n_res);
2444 	rte_trace_point_emit_int(ret);
2445 )
2446 
2447 RTE_TRACE_POINT_FP(
2448 	rte_flow_trace_async_action_handle_create,
2449 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
2450 		const struct rte_flow_op_attr *op_attr,
2451 		const struct rte_flow_indir_action_conf *indir_action_conf,
2452 		const struct rte_flow_action *action,
2453 		const void *user_data,
2454 		const struct rte_flow_action_handle *handle),
2455 	rte_trace_point_emit_u16(port_id);
2456 	rte_trace_point_emit_u32(queue_id);
2457 	rte_trace_point_emit_ptr(op_attr);
2458 	rte_trace_point_emit_ptr(indir_action_conf);
2459 	rte_trace_point_emit_ptr(action);
2460 	rte_trace_point_emit_ptr(user_data);
2461 	rte_trace_point_emit_ptr(handle);
2462 )
2463 
2464 RTE_TRACE_POINT_FP(
2465 	rte_flow_trace_async_action_handle_destroy,
2466 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
2467 		const struct rte_flow_op_attr *op_attr,
2468 		const struct rte_flow_action_handle *action_handle,
2469 		const void *user_data, int ret),
2470 	rte_trace_point_emit_u16(port_id);
2471 	rte_trace_point_emit_u32(queue_id);
2472 	rte_trace_point_emit_ptr(op_attr);
2473 	rte_trace_point_emit_ptr(action_handle);
2474 	rte_trace_point_emit_ptr(user_data);
2475 	rte_trace_point_emit_int(ret);
2476 )
2477 
2478 RTE_TRACE_POINT_FP(
2479 	rte_flow_trace_async_action_handle_update,
2480 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
2481 		const struct rte_flow_op_attr *op_attr,
2482 		const struct rte_flow_action_handle *action_handle,
2483 		const void *update, const void *user_data, int ret),
2484 	rte_trace_point_emit_u16(port_id);
2485 	rte_trace_point_emit_u32(queue_id);
2486 	rte_trace_point_emit_ptr(op_attr);
2487 	rte_trace_point_emit_ptr(action_handle);
2488 	rte_trace_point_emit_ptr(update);
2489 	rte_trace_point_emit_ptr(user_data);
2490 	rte_trace_point_emit_int(ret);
2491 )
2492 
2493 RTE_TRACE_POINT_FP(
2494 	rte_flow_trace_async_action_handle_query,
2495 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
2496 		const struct rte_flow_op_attr *op_attr,
2497 		const struct rte_flow_action_handle *action_handle,
2498 		const void *data, const void *user_data, int ret),
2499 	rte_trace_point_emit_u16(port_id);
2500 	rte_trace_point_emit_u32(queue_id);
2501 	rte_trace_point_emit_ptr(op_attr);
2502 	rte_trace_point_emit_ptr(action_handle);
2503 	rte_trace_point_emit_ptr(data);
2504 	rte_trace_point_emit_ptr(user_data);
2505 	rte_trace_point_emit_int(ret);
2506 )
2507 
2508 /* Called in loop in app/test-flow-perf */
2509 RTE_TRACE_POINT_FP(
2510 	rte_mtr_trace_create,
2511 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t mtr_id,
2512 		const struct rte_mtr_params *params, int shared, int ret),
2513 	rte_trace_point_emit_u16(port_id);
2514 	rte_trace_point_emit_u32(mtr_id);
2515 	rte_trace_point_emit_ptr(params);
2516 	rte_trace_point_emit_int(shared);
2517 	rte_trace_point_emit_int(ret);
2518 )
2519 
2520 /* Called in loop in app/test-flow-perf */
2521 RTE_TRACE_POINT_FP(
2522 	rte_mtr_trace_destroy,
2523 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t mtr_id, int ret),
2524 	rte_trace_point_emit_u16(port_id);
2525 	rte_trace_point_emit_u32(mtr_id);
2526 	rte_trace_point_emit_int(ret);
2527 )
2528 
2529 /* Called in loop in app/test-flow-perf */
2530 RTE_TRACE_POINT_FP(
2531 	rte_mtr_trace_meter_policy_delete,
2532 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t policy_id, int ret),
2533 	rte_trace_point_emit_u16(port_id);
2534 	rte_trace_point_emit_u32(policy_id);
2535 	rte_trace_point_emit_int(ret);
2536 )
2537 
2538 #ifdef __cplusplus
2539 }
2540 #endif
2541 
2542 #endif /* ETHDEV_TRACE_H */
2543