10 #ifndef _RTE_RING_CORE_H_ 11 #define _RTE_RING_CORE_H_ 29 #include <sys/queue.h> 32 #include <rte_config.h> 41 #define RTE_TAILQ_RING_NAME "RTE_RING" 51 #define RTE_RING_MZ_PREFIX "RG_" 53 #define RTE_RING_NAMESIZE (RTE_MEMZONE_NAMESIZE - \ 54 sizeof(RTE_RING_MZ_PREFIX) + 1) 60 #ifdef ALLOW_EXPERIMENTAL_API 83 union __rte_ring_rts_poscnt {
92 struct rte_ring_rts_headtail {
93 volatile union __rte_ring_rts_poscnt tail;
96 volatile union __rte_ring_rts_poscnt head;
99 union __rte_ring_hts_pos {
108 struct rte_ring_hts_headtail {
109 volatile union __rte_ring_hts_pos ht;
144 struct rte_ring_hts_headtail hts_prod;
145 struct rte_ring_rts_headtail rts_prod;
154 struct rte_ring_hts_headtail hts_cons;
155 struct rte_ring_rts_headtail rts_cons;
161 #define RING_F_SP_ENQ 0x0001 162 #define RING_F_SC_DEQ 0x0002 171 #define RING_F_EXACT_SZ 0x0004 172 #define RTE_RING_SZ_MASK (0x7fffffffU) 174 #define RING_F_MP_RTS_ENQ 0x0008 175 #define RING_F_MC_RTS_DEQ 0x0010 177 #define RING_F_MP_HTS_ENQ 0x0020 178 #define RING_F_MC_HTS_DEQ 0x0040
const struct rte_memzone * memzone
char pad2 __rte_cache_aligned
char name [RTE_MEMZONE_NAMESIZE] __rte_cache_aligned
char pad0 __rte_cache_aligned
char pad1 __rte_cache_aligned
#define __rte_cache_aligned
__extension__ struct rte_eth_link __rte_aligned(8)
enum rte_ring_sync_type sync_type
#define RTE_MEMZONE_NAMESIZE