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

Re: [openxt-dev] VirtIO-Argo initial development proposal



Hi Roger,

On 29/12/2020 09:17, Roger Pau Monné wrote:
On Wed, Dec 23, 2020 at 04:32:01PM -0500, Rich Persaud wrote:
On Dec 17, 2020, at 07:13, Jean-Philippe Ouellet <jpo@xxxxxx> wrote:
On Wed, Dec 16, 2020 at 2:37 PM Christopher Clark
<christopher.w.clark@xxxxxxxxx> wrote:
Hi all,

I have written a page for the OpenXT wiki describing a proposal for
initial development towards the VirtIO-Argo transport driver, and the
related system components to support it, destined for OpenXT and
upstream projects:

https://openxt.atlassian.net/wiki/spaces/~cclark/pages/1696169985/VirtIO-Argo+Development+Phase+1

Thanks for the detailed document, I've taken a look and there's indeed
a lot of work to do listed there :). I have some suggestion and
questions.

Overall I think it would be easier for VirtIO to take a new transport
if it's not tied to a specific hypervisor. The way Argo is implemented
right now is using hypercalls, which is a mechanism specific to Xen.
The concept of hypervisor call is not Xen specific. Any other hypervisor can easily implement them. At least this is the case on Arm because we have an instruction 'hvc' that acts the same way as a syscall but for the hypervisor.

What we would need to do is reserving a range for Argos. It should be possible to do it on Arm thanks to the SMCCC (see [1]).

I am not sure whether you have something similar on x86.

IMO it might be easier to start by having an Argo interface using
MSRs, that all hypervisors can implement, and then base the VirtIO
implementation on top of that interface.
My concern is the interface would need to be arch-specific. Would you mind to explain what's the problem to implement something based on vmcall?

Cheers,

[1] https://developer.arm.com/architectures/system-architectures/software-standards/smccc

--
Julien Grall



 


Rackspace

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