FD.io VPP  v21.10.1-2-g0a485f517
Vector Packet Processing
virtio_vring_t Struct Reference
+ Collaboration diagram for virtio_vring_t:

Public Member Functions

 CLIB_CACHE_LINE_ALIGN_MARK (cacheline0)
 

Data Fields

clib_spinlock_t lockp
 
union {
   struct {
      vring_desc_t *   desc
 
      vring_used_t *   used
 
      vring_avail_t *   avail
 
   } 
 
   struct {
      vring_packed_desc_t *   packed_desc
 
      vring_desc_event_t *   driver_event
 
      vring_desc_event_t *   device_event
 
   } 
 
}; 
 
u32buffers
 
u16 size
 
u16 queue_id
 
u32 queue_index
 
u16 desc_in_use
 
u16 desc_next
 
u16 last_used_idx
 
u16 last_kick_avail_idx
 
union {
   struct {
      int   kick_fd
 
      int   call_fd
 
      u32   call_file_index
 
   } 
 
   struct {
      u16   avail_wrap_counter
 
      u16   used_wrap_counter
 
      u16   queue_notify_offset
 
   } 
 
}; 
 
u16 flags
 
u8 buffer_pool_index
 
vnet_hw_if_rx_mode mode
 
virtio_vring_buffering_tbuffering
 
gro_flow_table_tflow_table
 

Detailed Description

Definition at line 63 of file virtio.h.

Member Function Documentation

◆ CLIB_CACHE_LINE_ALIGN_MARK()

virtio_vring_t::CLIB_CACHE_LINE_ALIGN_MARK ( cacheline0  )

Field Documentation

◆ @252

union { ... }

◆ @254

union { ... }

◆ avail

vring_avail_t* virtio_vring_t::avail

Definition at line 73 of file virtio.h.

◆ avail_wrap_counter

u16 virtio_vring_t::avail_wrap_counter

Definition at line 100 of file virtio.h.

◆ buffer_pool_index

u8 virtio_vring_t::buffer_pool_index

Definition at line 107 of file virtio.h.

◆ buffering

virtio_vring_buffering_t* virtio_vring_t::buffering

Definition at line 109 of file virtio.h.

◆ buffers

u32* virtio_vring_t::buffers

Definition at line 82 of file virtio.h.

◆ call_fd

int virtio_vring_t::call_fd

Definition at line 95 of file virtio.h.

◆ call_file_index

u32 virtio_vring_t::call_file_index

Definition at line 96 of file virtio.h.

◆ desc

vring_desc_t* virtio_vring_t::desc

Definition at line 71 of file virtio.h.

◆ desc_in_use

u16 virtio_vring_t::desc_in_use

Definition at line 86 of file virtio.h.

◆ desc_next

u16 virtio_vring_t::desc_next

Definition at line 87 of file virtio.h.

◆ device_event

vring_desc_event_t* virtio_vring_t::device_event

Definition at line 79 of file virtio.h.

◆ driver_event

vring_desc_event_t* virtio_vring_t::driver_event

Definition at line 78 of file virtio.h.

◆ flags

u16 virtio_vring_t::flags

Definition at line 106 of file virtio.h.

◆ flow_table

gro_flow_table_t* virtio_vring_t::flow_table

Definition at line 110 of file virtio.h.

◆ kick_fd

int virtio_vring_t::kick_fd

Definition at line 94 of file virtio.h.

◆ last_kick_avail_idx

u16 virtio_vring_t::last_kick_avail_idx

Definition at line 89 of file virtio.h.

◆ last_used_idx

u16 virtio_vring_t::last_used_idx

Definition at line 88 of file virtio.h.

◆ lockp

clib_spinlock_t virtio_vring_t::lockp

Definition at line 66 of file virtio.h.

◆ mode

vnet_hw_if_rx_mode virtio_vring_t::mode

Definition at line 108 of file virtio.h.

◆ packed_desc

vring_packed_desc_t* virtio_vring_t::packed_desc

Definition at line 77 of file virtio.h.

◆ queue_id

u16 virtio_vring_t::queue_id

Definition at line 84 of file virtio.h.

◆ queue_index

u32 virtio_vring_t::queue_index

Definition at line 85 of file virtio.h.

◆ queue_notify_offset

u16 virtio_vring_t::queue_notify_offset

Definition at line 102 of file virtio.h.

◆ size

u16 virtio_vring_t::size

Definition at line 83 of file virtio.h.

◆ used

vring_used_t* virtio_vring_t::used

Definition at line 72 of file virtio.h.

◆ used_wrap_counter

u16 virtio_vring_t::used_wrap_counter

Definition at line 101 of file virtio.h.


The documentation for this struct was generated from the following file: