Refine VringStateGuard and VringStateMutGuard

Previously VringStateGuard and VringStateMutGuard are defined as enum,
which limits the extensibility of the interface. So convert them into
traits by using the High Rank Trait Bound tricky.

Signed-off-by: Liu Jiang <gerry@linux.alibaba.com>
This commit is contained in:
Liu Jiang 2021-12-18 12:41:48 +08:00 committed by Jiang Liu
parent 264d46d4c7
commit e5a5f1fe34
2 changed files with 43 additions and 60 deletions

View file

@ -10,9 +10,9 @@ license = "Apache-2.0"
[dependencies]
libc = ">=0.2.39"
log = ">=0.4.6"
vhost = { version = "0.2", features = ["vhost-user-slave"] }
vhost = { version = "0.3", features = ["vhost-user-slave"] }
virtio-bindings = "0.1"
virtio-queue = { git = "https://github.com/rust-vmm/vm-virtio", rev = "cc1fa35" }
virtio-queue = "0.1"
vm-memory = {version = "0.7", features = ["backend-mmap", "backend-atomic"]}
vmm-sys-util = "0.9"