Expand description

Interfaces and implementations of virtio devices.

Please refer to [Virtio Specification] (http://docs.oasis-open.org/virtio/virtio/v1.0/cs04/virtio-v1.0-cs04.html#x1-1090002) for more information.

Modules

Structs

Virtio device configuration information.
A helper struct to support basic operations for emulated VirtioDevice backend devices.
Virtio queue configuration information.
Device memory shared between guest and the device backend driver, defined by the Virtio specification for Virtio-fs devices.
A list of Shared Memory regions

Enums

Error code for VirtioDevice::activate().
Error for virtio devices to handle requests from guests.
Version of virtio specifications supported by PCI virtio devices.

Constants

Indicates that the guest OS has found the device and recognized it as a valid virtio device.
Indicates that the guest OS knows how to drive the device.
Indicates that the driver is set up and ready to drive the device.
Indicates that something went wrong in the guest, and it has given up on the device. This could be an internal error, or the driver didn’t like the device for some reason, or even a fatal error during device operation.
Indicates that the driver has acknowledged all the features it understands, and feature negotiation is complete.
Initial state after device initialization/reset.
Indicates that the device has experienced an error from which it can’t recover.
Virtio balloon device.
Virtio block device.
Virtio mem device.
Virtio network card device.
Virtio-pmem device.
Virtio-rng device.
Virtio-fs virtual device.
Virtio vsock device.
Device configuration changed.
Data available in used queue.
Page size for legacy PCI virtio devices. Assume it’s 4K.

Traits

Trait for Virtio transport layer to manage virtio devices.
A callback for the VMM to insert memory region for virtio devices that has device memory, such as DAX of virtiofs, pmem.

Functions

Create an interrupt notifier for virtio device change events.
Create an interrupt notifier for virtio queue notification events.

Type Definitions

Specialized std::result::Result for VirtioDevice::activate().
Specialized std::result::Result for Virtio device operations.