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
+2 -2
View File
@@ -27,8 +27,8 @@ vmm-sys-util = ">=0.3.1"
[dependencies.vhost_rs]
path = "../vhost_rs"
features = ["vhost-user-master"]
features = ["vhost-user-master", "vhost-user-slave"]
[dependencies.vm-memory]
git = "https://github.com/rust-vmm/vm-memory"
features = ["backend-mmap"]
features = ["backend-mmap", "backend-atomic"]