struct buffer_descriptor
Defined at line 40 of file ../../src/connectivity/lib/network-device/buffer_descriptor/buffer_descriptor.h
A buffer descriptor, which contains a region of the data VMO that can be used
to store data plus associated metadata.
The region of the VMO described by a buffer descriptor has the form:
| head | data | tail |.
The three regions have lengths |head_length|, |data_length|, |tail_length|
and always start |offset| bytes from the start of the data VMO.
A data-carrying buffer's payload is ALWAYS in the |data| region of the
described memory space, but the owner of the buffer is always guaranteed (by
the FIFO contract) to be the sole accessor of the entire allocated region.
When descriptors are chained using |chain_length| and |nxt|, |head_length|
may only be different than 0 for the first buffer and |tail_length| may only
be different than 0 for the last buffer.
Public Members
uint8_t frame_type
uint8_t chain_length
uint16_t nxt
uint32_t info_type
port_id port_id
uint8_t[2] _reserved
uint8_t[4] client_opaque_data
uint64_t offset
uint16_t head_length
uint16_t tail_length
uint32_t data_length
uint32_t inbound_flags
uint32_t return_flags