class TxIoBufferRing
Defined at line 150 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 166 of file ../../src/devices/misc/drivers/virtio-socket/socket.h
void TxIoBufferRing (virtio::Device *device,uint16_tcount,uint32_tbuf_size)
Defined at line 694 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 698 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 707 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 718 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 723 of file ../../src/devices/misc/drivers/virtio-socket/socket.cc
void FreeChain (uint16_t id)
Defined at line 735 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 744 of file ../../src/devices/misc/drivers/virtio-socket/socket.cc