#[repr(C, align(16))]pub struct VirtqDesc {
pub addr: Pa,
pub len: u32,
pub flags: VirtqDescFlags,
/* private fields */
}Expand description
The Virtqueue Descriptor Table.
The descriptor table refers to the buffers the driver is using for the device. addr is a physical address, and the buffers can be chained via next. Each descriptor describes a buffer which is read-only for the device (“device-readable”) or write-only for the device (“device-writable”), but a chain of descriptors can contain both device-readable and device-writable buffers. The actual contents of the memory offered to the device depends on the device type. Most common is to begin the data with a header (containing little-endian fields) for the device to read, and postfix it with a status tailer for the device to write.
Fields§
§addr: PaAddress (guest-physical)
len: u32Length.
flags: VirtqDescFlagsThe flags.
Trait Implementations§
Auto Trait Implementations§
impl RefUnwindSafe for VirtqDesc
impl Send for VirtqDesc
impl Sync for VirtqDesc
impl Unpin for VirtqDesc
impl UnwindSafe for VirtqDesc
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
const: unstable§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more