#[repr(C, align(16))]pub struct VirtqueueDescriptors<const MAX_QUEUE_SIZE: usize>(/* private fields */);
Expand description
The Virtqueue descriptor table.
This table is provided to the VirtIO device (host) as a means to communicate
information about shared buffers, maintained in the individual
VirtqueueDescriptor
elements. Elements in this table are referenced by
the VirtqueueAvailableRing
and VirtqueueUsedRing
for exposing them
to the VirtIO device in order, and receiving exposed (“used”) buffers back
from the device.
Multiple entries of the descriptor table can be chained in order to treat
disjoint regions of memory as a single buffer through the
VirtqueueDescriptor::next
field, where the value of this field indexes
into this table.
Trait Implementations§
Auto Trait Implementations§
impl<const MAX_QUEUE_SIZE: usize> !Freeze for VirtqueueDescriptors<MAX_QUEUE_SIZE>
impl<const MAX_QUEUE_SIZE: usize> !RefUnwindSafe for VirtqueueDescriptors<MAX_QUEUE_SIZE>
impl<const MAX_QUEUE_SIZE: usize> Send for VirtqueueDescriptors<MAX_QUEUE_SIZE>
impl<const MAX_QUEUE_SIZE: usize> !Sync for VirtqueueDescriptors<MAX_QUEUE_SIZE>
impl<const MAX_QUEUE_SIZE: usize> Unpin for VirtqueueDescriptors<MAX_QUEUE_SIZE>
impl<const MAX_QUEUE_SIZE: usize> UnwindSafe for VirtqueueDescriptors<MAX_QUEUE_SIZE>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more