class TxIoBufferRing
Defined at line 152 of file ../../src/devices/misc/drivers/virtio-socket/socket.h
Public Methods
void SetHeader (uint16_t id, const virtio_vsock_hdr_t & hdr)
Defined at line 168 of file ../../src/devices/misc/drivers/virtio-socket/socket.h
void TxIoBufferRing (virtio::Device * device, uint16_t count, uint32_t buf_size)
Defined at line 722 of file ../../src/devices/misc/drivers/virtio-socket/socket.cc
void * AllocInPlace (uint16_t * id)
Allocates a descriptor returning a pointer to the location to fill with
data.
Defined at line 726 of file ../../src/devices/misc/drivers/virtio-socket/socket.cc
bool AllocIndirect (const ConnectionKey & key, uint16_t * id)
Allocate a descriptor chain for sending an indirect payload. The
chain should have SetIndirectPayload and SetHeader called on it
prior to being given to SubmitChain.
Defined at line 735 of file ../../src/devices/misc/drivers/virtio-socket/socket.cc
void SetIndirectPayload (uint16_t id, uintptr_t payload)
Attaches the indirect payload to the descriptor chain allocated by
AllocIndirect.
Defined at line 746 of file ../../src/devices/misc/drivers/virtio-socket/socket.cc
void SubmitChain (uint16_t id, uint32_t data_len)
Submit a chain for TX. Does not kick the ring.
Defined at line 751 of file ../../src/devices/misc/drivers/virtio-socket/socket.cc
void FreeChain (uint16_t id)
Defined at line 763 of file ../../src/devices/misc/drivers/virtio-socket/socket.cc
template <typename F>
void ProcessDescriptors (F func)
Processes the completed tx descriptors and calls the provided function
with the key and indirect payload for any indirect descriptors.
Defined at line 772 of file ../../src/devices/misc/drivers/virtio-socket/socket.cc