2025-09-04 –, Room 2
We’ll give an overview over the IOMMU model in vhost-user and efforts to integrate support in the rust-vmm ecosystem. Doing so requires changes to the memory model and implementing the vhost-user protocol part, so is an effort across various crates in the ecosystem, from vm-memory up to vhost-user-backend.
Presenting these changes and why they’re necessary will also give general insight into how all of these crates even work together in the first place, which we hope will serve as a good introduction to the ecosystem.
Adding IOMMU capabilities to these crates also enables interesting use cases, especially related with VDUSE exposed through vhost vdpa and virtio vDPA. This allows exposing vhost-user devices to containers through a vhost-user to VDUSE bridge.
Talking about combining virtiofs and VDUSE, there is another interesting combination: To expose FUSE filesystems through VDUSE. Again, this allows the existing (and varied!) ecosystem of FUSE apps
to be exposed to containers and VMs, without the need to modify any of the FUSE app, the guest, or the containerized app.
I’ve been working for Red Hat in the virtualization storage area for a couple of years, first on the QEMU block layer, later primarily on virtio-fs.
Software Engineer in the Virtualization and Networking (virtio-net) team at Red Hat