1 typedef unsigned char uint8_t; 2 typedef unsigned short uint16_t; 3 typedef unsigned int uint32_t; 4 typedef unsigned long long uint64_t; 5 6 struct rte_kni_fifo { 7 volatile unsigned write; /**< Next position to be written*/ 8 volatile unsigned read; /**< Next position to be read */ 9 unsigned len; /**< Circular buffer length */ 10 unsigned elem_size; /**< Pointer size - for 32/64 bit OS */ 11 void *volatile buffer[]; /**< The buffer contains mbuf pointers */ 12 }; 13 14 __extension__ 15 struct rte_eth_link { 16 uint32_t link_speed; /**< ETH_SPEED_NUM_ */ 17 uint16_t link_duplex : 1; /**< ETH_LINK_[HALF/FULL]_DUPLEX */ 18 uint16_t link_autoneg : 1; /**< ETH_LINK_SPEED_[AUTONEG/FIXED] */ 19 uint16_t link_status : 1; /**< ETH_LINK_[DOWN/UP] */ 20 } __attribute__((aligned(8))); /**< aligned for atomic64 read/write */