Rust Based Virtio Backends for Hypervisor Agnostic Solutions - Alex Bennée & Viresh Kumar, Linaro
Channel: The Linux Foundation
Date: 2022-10-08

Rust Based Virtio Backends for Hypervisor Agnostic Solutions - Alex Bennée & Viresh Kumar, Linaro

Project Stratos is a Linaro open source undertaking which aims to leverage VirtIO in a wide array of applications. One of the goals is making VirtIO backends hypervisor agnostic by leveraging the vhost-user and virtio protocols. The vision is to replace hypervisor specific backend drivers with implementations that conform to the protocol. These vhost-user backend daemons then interact with the real hardware, potentially multiplexing resources between multiple guests. With the details of device emulation offloaded to portable daemons we hope to avoid needless duplication when enabling virtio on other hypervisors. Up to now I2C, RNG, GPIO and soon to be RPMB daemons have been implemented in Rust and folded under the rust-vmm project by way of the vhost-device crate. The functionality was originally tested using QEMU emulation. We then replaced this with Xen and a newly minted xen-vhost-master daemon, proving the end-to-end feasibility of the project. The team is now looking at properly integrating xen-vhost-master and companion Xen API crate in the rust-vmm project, along with development of new vhost-user daemons to support complex hardware such as camera and wireless devices.