[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Is it time to start implementing Xen bindings for rust-vmm?



David Woodhouse <dwmw2@xxxxxxxxxxxxx> writes:

> [[S/MIME Signed Part:Undecided]]
> On Mon, 2021-09-13 at 13:44 +0100, Alex Bennée wrote:
>> Hi,
>> 
>> As we consider the next cycle for Project Stratos I would like to make
>> some more progress on hypervisor agnosticism for our virtio backends.
>> While we have implemented a number of virtio vhost-user backends using C
>> we've rapidly switched to using rust-vmm based ones for virtio-i2c,
>> virtio-rng and virtio-gpio. Given the interest in Rust for implementing
>> backends does it make sense to do some enabling work in rust-vmm to
>> support Xen?
>
> I like this idea.
>
> Somewhat separately, Alex Agache has already started some preliminary
> hacking on supporting Xen guests within rust-vmm (on top of Linux/KVM):
> https://github.com/alexandruag/vmm-reference/commits/xen

I'll be sending along a more detailed post once I've finished my
work breakdown but I'm currently envisioning two parts. A xen-sys crate
for the low level access that supports both ioctl and hypercall calls.
This would be useful for other projects such as stubdomains (think a
"bare-metal" RTOS with some sort of backend, uni-kernel style). It would
also be the lowest layer that rust-vmm can use to interact with the
hypervisor.

I'm aware the HyperV solution is to present a KVM-like ioctl interface
via the host kernel. However if we want generality with type-1
hypervisors we can't assume all will get suitable translation layers in
the kernel.

Fortunately for the time being our focus is on virtio backends so we
don't need to get directly involved in the hypervisor run loop... for
now.

> Being able to run on *actual* Xen would be good too. And we should also
> aspire to do guest-transparent live migration between the two hosting
> environments.
>
> Where relevant, it would be great to be able to share components (like
> emulation of the Xen PCI platform device, a completely single-tenant
> XenStore implementation dedicated to a single guest, perhaps PV
> netback/blkback and other things).

For Stratos portable virtio backends is one of our project goals.
>
>
> [[End of S/MIME Signed Part]]


-- 
Alex Bennée



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.