5#ifndef _RTE_STACK_STD_H_
6#define _RTE_STACK_STD_H_
23__rte_stack_std_push(
struct rte_stack *s,
void *
const *obj_table,
26 struct rte_stack_std *stack = &s->stack_std;
31 stack_objs = &stack->objs[stack->len];
33 if (
unlikely((stack->len + n) > s->capacity)) {
40 for (index = 0; index < n; ++index, obj_table++)
41 stack_objs[index] = *obj_table;
62__rte_stack_std_pop(
struct rte_stack *s,
void **obj_table,
unsigned int n)
64 struct rte_stack_std *stack = &s->stack_std;
65 unsigned int index, len;
76 stack_objs = stack->objs;
79 for (index = 0, len = stack->len - 1; index < n;
80 ++index, len--, obj_table++)
81 *obj_table = stack_objs[len];
98__rte_stack_std_count(
struct rte_stack *s)
100 return (
unsigned int)s->stack_std.len;
110rte_stack_std_init(
struct rte_stack *s);
121rte_stack_std_get_memsize(
unsigned int count);
#define __rte_always_inline
static void rte_spinlock_unlock(rte_spinlock_t *sl)
static void rte_spinlock_lock(rte_spinlock_t *sl)