/**
* @file
- * @b EXPERIMENTAL: this API may change without prior notice
* It is not recommended to include this file directly.
* Please include <rte_ring_elem.h> instead.
*
* @return
* The number of objects that can be enqueued, either 0 or n
*/
-__rte_experimental
static __rte_always_inline unsigned int
rte_ring_enqueue_bulk_elem_start(struct rte_ring *r, unsigned int n,
unsigned int *free_space)
* @return
* The number of objects that can be enqueued, either 0 or n
*/
-__rte_experimental
static __rte_always_inline unsigned int
rte_ring_enqueue_bulk_start(struct rte_ring *r, unsigned int n,
unsigned int *free_space)
* @return
* Actual number of objects that can be enqueued.
*/
-__rte_experimental
static __rte_always_inline unsigned int
rte_ring_enqueue_burst_elem_start(struct rte_ring *r, unsigned int n,
unsigned int *free_space)
* @return
* Actual number of objects that can be enqueued.
*/
-__rte_experimental
static __rte_always_inline unsigned int
rte_ring_enqueue_burst_start(struct rte_ring *r, unsigned int n,
unsigned int *free_space)
* @param n
* The number of objects to add to the ring from the obj_table.
*/
-__rte_experimental
static __rte_always_inline void
rte_ring_enqueue_elem_finish(struct rte_ring *r, const void *obj_table,
unsigned int esize, unsigned int n)
* @param n
* The number of objects to add to the ring from the obj_table.
*/
-__rte_experimental
static __rte_always_inline void
rte_ring_enqueue_finish(struct rte_ring *r, void * const *obj_table,
unsigned int n)
* @return
* The number of objects dequeued, either 0 or n.
*/
-__rte_experimental
static __rte_always_inline unsigned int
rte_ring_dequeue_bulk_elem_start(struct rte_ring *r, void *obj_table,
unsigned int esize, unsigned int n, unsigned int *available)
* @return
* Actual number of objects dequeued.
*/
-__rte_experimental
static __rte_always_inline unsigned int
rte_ring_dequeue_bulk_start(struct rte_ring *r, void **obj_table,
unsigned int n, unsigned int *available)
* @return
* The actual number of objects dequeued.
*/
-__rte_experimental
static __rte_always_inline unsigned int
rte_ring_dequeue_burst_elem_start(struct rte_ring *r, void *obj_table,
unsigned int esize, unsigned int n, unsigned int *available)
* @return
* The actual number of objects dequeued.
*/
-__rte_experimental
static __rte_always_inline unsigned int
rte_ring_dequeue_burst_start(struct rte_ring *r, void **obj_table,
unsigned int n, unsigned int *available)
* @param n
* The number of objects to remove from the ring.
*/
-__rte_experimental
static __rte_always_inline void
rte_ring_dequeue_elem_finish(struct rte_ring *r, unsigned int n)
{
* @param n
* The number of objects to remove from the ring.
*/
-__rte_experimental
static __rte_always_inline void
rte_ring_dequeue_finish(struct rte_ring *r, unsigned int n)
{