Struct virtio_driver::virtqueue::VirtqueueLayout
source · [−]pub struct VirtqueueLayout {
pub num_queues: usize,
pub avail_offset: usize,
pub used_offset: usize,
pub req_offset: usize,
pub end_offset: usize,
}Expand description
A description how the memory passed for each virtqueue is split into individual regions.
- The Virtqueue Descriptor Table starts from offset 0
- The Virtqueue Available Ring starts at
avail_offset - The Virtqueue Used Ring starts at
used_offset - Driver-specific per request data that needs to be shared with the device (e.g. request
headers or status bytes) start at
req_offset
Fields
num_queues: usizeavail_offset: usizeused_offset: usizereq_offset: usizeend_offset: usizeImplementations
Auto Trait Implementations
impl RefUnwindSafe for VirtqueueLayout
impl Send for VirtqueueLayout
impl Sync for VirtqueueLayout
impl Unpin for VirtqueueLayout
impl UnwindSafe for VirtqueueLayout
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more