Module devices::virtio

source Β·
Expand description

Implements virtio devices, queues, and transport mechanisms.

Re-exports§

Modules§

  • async_utils πŸ”’
    Virtio device async helper functions.
  • balloon πŸ”’
  • Virtio console device.
  • descriptor_chain πŸ”’
    Virtqueue descriptor chain abstraction
  • descriptor_utils πŸ”’
  • Contains constants and struct definitions used for implementing vhost-user frontend devices without compile-time dependencies on their corresponding backend devices.
  • interrupt πŸ”’
  • iommu πŸ”’
  • Provide utility to communicate with an iommu in another process
  • Support for virtio-media devices in crosvm.
  • MemoryMapper trait and basic impl for virtio-iommu implementation
  • p9 πŸ”’
  • pmem πŸ”’
  • Virtio version of a linux pvclock clocksource.
  • queue πŸ”’
    virtqueue interface
  • This module defines the protocol between virtio-wayland and virtio-gpu for sharing resources that are backed by file descriptors.
  • rng πŸ”’
  • tpm πŸ”’
  • Wraps VfioContainer for virtio-iommu implementation
  • Implements vhost-based virtio devices.
  • VirtioDevice implementation for the VMM side of a vhost-user connection.
  • video πŸ”’
    This module implements the virtio video encoder and decoder devices. The current implementation uses v3 RFC of the virtio-video protocol.
  • virtio_device πŸ”’
  • This module implements the virtio vsock device.
  • This module implements the virtio wayland used by the guest to access the host’s wayland server.

Structs§

Enums§

Constants§

Traits§

Functions§

  • Returns the set of reserved base features common to all virtio devices.
  • Copy virtio device configuration data from a subslice of src to a subslice of dst. Unlike std::slice::copy_from_slice(), this function copies as much as possible within the common subset of the two slices, truncating the requested range instead of panicking if the slices do not match in size.
  • Test utility function to create a descriptor chain in guest memory.
  • Creates a oneshot channel, returning the rx end and adding the tx end to the provided Vec. Useful for creating oneshots that signal a virtqueue future to stop processing and exit.