vm-virtio: Add support for indirect descriptors

Indirect descriptors is a virtio feature that allows the driver to
store a table of descriptors anywhere in memory, pointing to it from a
virtqueue ring's descriptor with a particular flag.

We can't seamlessly transition from an iterator over a conventional
descriptor chain to an indirect chain, so Queue users need to
explicitly support this feature by calling Queue::is_indirect() and
Queue::new_from_indirect().

Signed-off-by: Sergio Lopez <slp@redhat.com>
This commit is contained in:
Sergio Lopez
2020-02-21 11:34:51 +01:00
committed by Rob Bradford
parent d7b0b9842d
commit 42937c9754
3 changed files with 116 additions and 12 deletions

View File

@@ -32,7 +32,7 @@ mod iommu;
pub mod net;
pub mod net_util;
mod pmem;
mod queue;
pub mod queue;
mod rng;
pub mod vsock;