10 #ifndef _RTE_RING_RTS_H_ 11 #define _RTE_RING_RTS_H_ 81 unsigned int esize,
unsigned int n,
unsigned int *free_space)
83 return __rte_ring_do_rts_enqueue_elem(r, obj_table, esize, n,
108 unsigned int esize,
unsigned int n,
unsigned int *available)
110 return __rte_ring_do_rts_dequeue_elem(r, obj_table, esize, n,
135 unsigned int esize,
unsigned int n,
unsigned int *free_space)
137 return __rte_ring_do_rts_enqueue_elem(r, obj_table, esize, n,
164 unsigned int esize,
unsigned int n,
unsigned int *available)
166 return __rte_ring_do_rts_dequeue_elem(r, obj_table, esize, n,
187 unsigned int n,
unsigned int *free_space)
190 sizeof(uintptr_t), n, free_space);
210 unsigned int n,
unsigned int *available)
213 sizeof(uintptr_t), n, available);
233 unsigned int n,
unsigned int *free_space)
236 sizeof(uintptr_t), n, free_space);
258 unsigned int n,
unsigned int *available)
261 sizeof(uintptr_t), n, available);
273 static inline uint32_t
277 return r->rts_prod.htd_max;
298 r->rts_prod.htd_max = v;
311 static inline uint32_t
315 return r->rts_cons.htd_max;
336 r->rts_cons.htd_max = v;
#define __rte_always_inline
static uint32_t rte_ring_get_prod_htd_max(const struct rte_ring *r)
static __rte_always_inline unsigned int rte_ring_mc_rts_dequeue_bulk_elem(struct rte_ring *r, void *obj_table, unsigned int esize, unsigned int n, unsigned int *available)
static __rte_always_inline unsigned int rte_ring_mc_rts_dequeue_bulk(struct rte_ring *r, void **obj_table, unsigned int n, unsigned int *available)
static uint32_t rte_ring_get_cons_htd_max(const struct rte_ring *r)
static __rte_always_inline unsigned int rte_ring_mc_rts_dequeue_burst(struct rte_ring *r, void **obj_table, unsigned int n, unsigned int *available)
static __rte_always_inline unsigned int rte_ring_mc_rts_dequeue_burst_elem(struct rte_ring *r, void *obj_table, unsigned int esize, unsigned int n, unsigned int *available)
static int rte_ring_set_prod_htd_max(struct rte_ring *r, uint32_t v)
static int rte_ring_set_cons_htd_max(struct rte_ring *r, uint32_t v)
static __rte_always_inline unsigned int rte_ring_mp_rts_enqueue_burst(struct rte_ring *r, void *const *obj_table, unsigned int n, unsigned int *free_space)
enum rte_ring_sync_type sync_type
static __rte_always_inline unsigned int rte_ring_mp_rts_enqueue_bulk_elem(struct rte_ring *r, const void *obj_table, unsigned int esize, unsigned int n, unsigned int *free_space)
static __rte_always_inline unsigned int rte_ring_mp_rts_enqueue_burst_elem(struct rte_ring *r, const void *obj_table, unsigned int esize, unsigned int n, unsigned int *free_space)
static __rte_always_inline unsigned int rte_ring_mp_rts_enqueue_bulk(struct rte_ring *r, void *const *obj_table, unsigned int n, unsigned int *free_space)