DPDK 22.11.7
rte_mempool_trace.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(C) 2020 Marvell International Ltd.
3 */
4
5#ifndef _RTE_MEMPOOL_TRACE_H_
6#define _RTE_MEMPOOL_TRACE_H_
7
14#ifdef __cplusplus
15extern "C" {
16#endif
17
18#include "rte_mempool.h"
19
20#include <rte_memzone.h>
21#include <rte_trace_point.h>
22
24 rte_mempool_trace_create,
25 RTE_TRACE_POINT_ARGS(const char *name, uint32_t nb_elts,
26 uint32_t elt_size, uint32_t cache_size,
27 uint32_t private_data_size, void *mp_init, void *mp_init_arg,
28 void *obj_init, void *obj_init_arg, uint32_t flags,
29 struct rte_mempool *mempool),
33 rte_trace_point_emit_u32(cache_size);
34 rte_trace_point_emit_u32(private_data_size);
36 rte_trace_point_emit_ptr(mp_init_arg);
38 rte_trace_point_emit_ptr(obj_init_arg);
42)
43
45 rte_mempool_trace_create_empty,
46 RTE_TRACE_POINT_ARGS(const char *name, uint32_t nb_elts,
47 uint32_t elt_size, uint32_t cache_size,
48 uint32_t private_data_size, uint32_t flags,
49 struct rte_mempool *mempool),
53 rte_trace_point_emit_u32(cache_size);
54 rte_trace_point_emit_u32(private_data_size);
58)
59
61 rte_mempool_trace_free,
62 RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool),
65)
66
68 rte_mempool_trace_populate_iova,
69 RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool, void *vaddr,
70 rte_iova_t iova, size_t len, void *free_cb, void *opaque),
78)
79
81 rte_mempool_trace_populate_virt,
82 RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool, void *addr,
83 size_t len, size_t pg_sz, void *free_cb, void *opaque),
91)
92
94 rte_mempool_trace_populate_default,
95 RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool),
98)
99
101 rte_mempool_trace_populate_anon,
102 RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool),
105)
106
108 rte_mempool_trace_cache_create,
109 RTE_TRACE_POINT_ARGS(uint32_t size, int socket_id,
110 struct rte_mempool_cache *cache),
112 rte_trace_point_emit_i32(socket_id);
114 rte_trace_point_emit_u32(cache->len);
115 rte_trace_point_emit_u32(cache->flushthresh);
116)
117
119 rte_mempool_trace_cache_free,
120 RTE_TRACE_POINT_ARGS(void *cache),
122)
123
125 rte_mempool_trace_get_page_size,
126 RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool, size_t pg_sz),
130)
131
133 rte_mempool_trace_ops_populate,
134 RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool, uint32_t max_objs,
135 void *vaddr, uint64_t iova, size_t len, void *obj_cb,
136 void *obj_cb_arg),
139 rte_trace_point_emit_u32(max_objs);
144 rte_trace_point_emit_ptr(obj_cb_arg);
145)
146
148 rte_mempool_trace_ops_alloc,
149 RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool),
152)
153
155 rte_mempool_trace_ops_free,
156 RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool),
159)
160
162 rte_mempool_trace_set_ops_byname,
163 RTE_TRACE_POINT_ARGS(struct rte_mempool *mempool, const char *name,
164 void *pool_config),
168 rte_trace_point_emit_ptr(pool_config);
169)
170
171#ifdef __cplusplus
172}
173#endif
174
175#endif /* _RTE_MEMPOOL_TRACE_H_ */
uint64_t rte_iova_t
Definition: rte_common.h:458
#define rte_trace_point_emit_u32(val)
#define rte_trace_point_emit_i32(val)
#define RTE_TRACE_POINT_ARGS
#define rte_trace_point_emit_ptr(val)
#define rte_trace_point_emit_u64(val)
#define rte_trace_point_emit_size_t(val)
#define rte_trace_point_emit_string(val)
#define RTE_TRACE_POINT(tp, args,...)
int32_t ops_index
Definition: rte_mempool.h:246
char name[RTE_MEMPOOL_NAMESIZE]
Definition: rte_mempool.h:220