xref: /dpdk/lib/mempool/mempool_trace.h (revision 719834a6849e1daf4a70ff7742bbcc3ae7e25607)
11159d8fbSAnkur Dwivedi /* SPDX-License-Identifier: BSD-3-Clause
21159d8fbSAnkur Dwivedi  * Copyright(C) 2020 Marvell International Ltd.
31159d8fbSAnkur Dwivedi  */
41159d8fbSAnkur Dwivedi 
51159d8fbSAnkur Dwivedi #ifndef MEMPOOL_TRACE_H
61159d8fbSAnkur Dwivedi #define MEMPOOL_TRACE_H
71159d8fbSAnkur Dwivedi 
81159d8fbSAnkur Dwivedi /**
91159d8fbSAnkur Dwivedi  * @file
101159d8fbSAnkur Dwivedi  *
111159d8fbSAnkur Dwivedi  * APIs for mempool trace support
121159d8fbSAnkur Dwivedi  */
131159d8fbSAnkur Dwivedi 
141159d8fbSAnkur Dwivedi #include "rte_mempool.h"
151159d8fbSAnkur Dwivedi 
161159d8fbSAnkur Dwivedi #include <rte_memzone.h>
171159d8fbSAnkur Dwivedi #include <rte_trace_point.h>
181159d8fbSAnkur Dwivedi 
19*719834a6SMattias Rönnblom #ifdef __cplusplus
20*719834a6SMattias Rönnblom extern "C" {
21*719834a6SMattias Rönnblom #endif
22*719834a6SMattias Rönnblom 
231159d8fbSAnkur Dwivedi RTE_TRACE_POINT(
241159d8fbSAnkur Dwivedi 	rte_mempool_trace_create,
251159d8fbSAnkur Dwivedi 	RTE_TRACE_POINT_ARGS(const char *name, uint32_t nb_elts,
261159d8fbSAnkur Dwivedi 		uint32_t elt_size, uint32_t cache_size,
271159d8fbSAnkur Dwivedi 		uint32_t private_data_size, void *mp_init, void *mp_init_arg,
281159d8fbSAnkur Dwivedi 		void *obj_init, void *obj_init_arg, uint32_t flags,
291159d8fbSAnkur Dwivedi 		struct rte_mempool *mempool),
301159d8fbSAnkur Dwivedi 	rte_trace_point_emit_string(name);
311159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u32(nb_elts);
321159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u32(elt_size);
331159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u32(cache_size);
341159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u32(private_data_size);
351159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(mp_init);
361159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(mp_init_arg);
371159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(obj_init);
381159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(obj_init_arg);
391159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u32(flags);
401159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(mempool);
411159d8fbSAnkur Dwivedi 	rte_trace_point_emit_i32(mempool->ops_index);
421159d8fbSAnkur Dwivedi )
431159d8fbSAnkur Dwivedi 
441159d8fbSAnkur Dwivedi RTE_TRACE_POINT(
451159d8fbSAnkur Dwivedi 	rte_mempool_trace_create_empty,
461159d8fbSAnkur Dwivedi 	RTE_TRACE_POINT_ARGS(const char *name, uint32_t nb_elts,
471159d8fbSAnkur Dwivedi 		uint32_t elt_size, uint32_t cache_size,
481159d8fbSAnkur Dwivedi 		uint32_t private_data_size, uint32_t flags,
491159d8fbSAnkur Dwivedi 		struct rte_mempool *mempool),
501159d8fbSAnkur Dwivedi 	rte_trace_point_emit_string(name);
511159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u32(nb_elts);
521159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u32(elt_size);
531159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u32(cache_size);
541159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u32(private_data_size);
551159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u32(flags);
561159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(mempool);
571159d8fbSAnkur Dwivedi 	rte_trace_point_emit_i32(mempool->ops_index);
581159d8fbSAnkur Dwivedi )
591159d8fbSAnkur Dwivedi 
601159d8fbSAnkur Dwivedi RTE_TRACE_POINT(
611159d8fbSAnkur Dwivedi 	rte_mempool_trace_free,
621159d8fbSAnkur Dwivedi 	RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool),
631159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(mempool);
641159d8fbSAnkur Dwivedi 	rte_trace_point_emit_string(mempool->name);
651159d8fbSAnkur Dwivedi )
661159d8fbSAnkur Dwivedi 
671159d8fbSAnkur Dwivedi RTE_TRACE_POINT(
681159d8fbSAnkur Dwivedi 	rte_mempool_trace_populate_iova,
691159d8fbSAnkur Dwivedi 	RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool, void *vaddr,
701159d8fbSAnkur Dwivedi 		rte_iova_t iova, size_t len, void *free_cb, void *opaque),
711159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(mempool);
721159d8fbSAnkur Dwivedi 	rte_trace_point_emit_string(mempool->name);
731159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(vaddr);
741159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u64(iova);
751159d8fbSAnkur Dwivedi 	rte_trace_point_emit_size_t(len);
761159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(free_cb);
771159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(opaque);
781159d8fbSAnkur Dwivedi )
791159d8fbSAnkur Dwivedi 
801159d8fbSAnkur Dwivedi RTE_TRACE_POINT(
811159d8fbSAnkur Dwivedi 	rte_mempool_trace_populate_virt,
821159d8fbSAnkur Dwivedi 	RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool, void *addr,
831159d8fbSAnkur Dwivedi 		size_t len, size_t pg_sz, void *free_cb, void *opaque),
841159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(mempool);
851159d8fbSAnkur Dwivedi 	rte_trace_point_emit_string(mempool->name);
861159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(addr);
871159d8fbSAnkur Dwivedi 	rte_trace_point_emit_size_t(len);
881159d8fbSAnkur Dwivedi 	rte_trace_point_emit_size_t(pg_sz);
891159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(free_cb);
901159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(opaque);
911159d8fbSAnkur Dwivedi )
921159d8fbSAnkur Dwivedi 
931159d8fbSAnkur Dwivedi RTE_TRACE_POINT(
941159d8fbSAnkur Dwivedi 	rte_mempool_trace_populate_default,
951159d8fbSAnkur Dwivedi 	RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool),
961159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(mempool);
971159d8fbSAnkur Dwivedi 	rte_trace_point_emit_string(mempool->name);
981159d8fbSAnkur Dwivedi )
991159d8fbSAnkur Dwivedi 
1001159d8fbSAnkur Dwivedi RTE_TRACE_POINT(
1011159d8fbSAnkur Dwivedi 	rte_mempool_trace_populate_anon,
1021159d8fbSAnkur Dwivedi 	RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool),
1031159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(mempool);
1041159d8fbSAnkur Dwivedi 	rte_trace_point_emit_string(mempool->name);
1051159d8fbSAnkur Dwivedi )
1061159d8fbSAnkur Dwivedi 
1071159d8fbSAnkur Dwivedi RTE_TRACE_POINT(
1081159d8fbSAnkur Dwivedi 	rte_mempool_trace_cache_create,
1091159d8fbSAnkur Dwivedi 	RTE_TRACE_POINT_ARGS(uint32_t size, int socket_id,
1101159d8fbSAnkur Dwivedi 		struct rte_mempool_cache *cache),
1111159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u32(size);
1121159d8fbSAnkur Dwivedi 	rte_trace_point_emit_i32(socket_id);
1131159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(cache);
1141159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u32(cache->len);
1151159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u32(cache->flushthresh);
1161159d8fbSAnkur Dwivedi )
1171159d8fbSAnkur Dwivedi 
1181159d8fbSAnkur Dwivedi RTE_TRACE_POINT(
1191159d8fbSAnkur Dwivedi 	rte_mempool_trace_cache_free,
1201159d8fbSAnkur Dwivedi 	RTE_TRACE_POINT_ARGS(void *cache),
1211159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(cache);
1221159d8fbSAnkur Dwivedi )
1231159d8fbSAnkur Dwivedi 
1241159d8fbSAnkur Dwivedi RTE_TRACE_POINT(
1251159d8fbSAnkur Dwivedi 	rte_mempool_trace_get_page_size,
1261159d8fbSAnkur Dwivedi 	RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool, size_t pg_sz),
1271159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(mempool);
1281159d8fbSAnkur Dwivedi 	rte_trace_point_emit_string(mempool->name);
1291159d8fbSAnkur Dwivedi 	rte_trace_point_emit_size_t(pg_sz);
1301159d8fbSAnkur Dwivedi )
1311159d8fbSAnkur Dwivedi 
1321159d8fbSAnkur Dwivedi RTE_TRACE_POINT(
1331159d8fbSAnkur Dwivedi 	rte_mempool_trace_ops_populate,
1341159d8fbSAnkur Dwivedi 	RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool, uint32_t max_objs,
1351159d8fbSAnkur Dwivedi 		void *vaddr, uint64_t iova, size_t len, void *obj_cb,
1361159d8fbSAnkur Dwivedi 		void *obj_cb_arg),
1371159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(mempool);
1381159d8fbSAnkur Dwivedi 	rte_trace_point_emit_string(mempool->name);
1391159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u32(max_objs);
1401159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(vaddr);
1411159d8fbSAnkur Dwivedi 	rte_trace_point_emit_u64(iova);
1421159d8fbSAnkur Dwivedi 	rte_trace_point_emit_size_t(len);
1431159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(obj_cb);
1441159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(obj_cb_arg);
1451159d8fbSAnkur Dwivedi )
1461159d8fbSAnkur Dwivedi 
1471159d8fbSAnkur Dwivedi RTE_TRACE_POINT(
1481159d8fbSAnkur Dwivedi 	rte_mempool_trace_ops_alloc,
1491159d8fbSAnkur Dwivedi 	RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool),
1501159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(mempool);
1511159d8fbSAnkur Dwivedi 	rte_trace_point_emit_string(mempool->name);
1521159d8fbSAnkur Dwivedi )
1531159d8fbSAnkur Dwivedi 
1541159d8fbSAnkur Dwivedi RTE_TRACE_POINT(
1551159d8fbSAnkur Dwivedi 	rte_mempool_trace_ops_free,
1561159d8fbSAnkur Dwivedi 	RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool),
1571159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(mempool);
1581159d8fbSAnkur Dwivedi 	rte_trace_point_emit_string(mempool->name);
1591159d8fbSAnkur Dwivedi )
1601159d8fbSAnkur Dwivedi 
1611159d8fbSAnkur Dwivedi RTE_TRACE_POINT(
1621159d8fbSAnkur Dwivedi 	rte_mempool_trace_set_ops_byname,
1631159d8fbSAnkur Dwivedi 	RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool, const char *name,
1641159d8fbSAnkur Dwivedi 		void *pool_config),
1651159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(mempool);
1661159d8fbSAnkur Dwivedi 	rte_trace_point_emit_string(mempool->name);
1671159d8fbSAnkur Dwivedi 	rte_trace_point_emit_string(name);
1681159d8fbSAnkur Dwivedi 	rte_trace_point_emit_ptr(pool_config);
1691159d8fbSAnkur Dwivedi )
1701159d8fbSAnkur Dwivedi 
1711159d8fbSAnkur Dwivedi #ifdef __cplusplus
1721159d8fbSAnkur Dwivedi }
1731159d8fbSAnkur Dwivedi #endif
1741159d8fbSAnkur Dwivedi 
1751159d8fbSAnkur Dwivedi #endif /* MEMPOOL_TRACE_H */
176