Re: [Xen-devel] [PATCH RFC 00/39] x86/KVM: Xen HVM guest support
From: Joao Martins
Date: Thu Feb 21 2019 - 07:02:10 EST
On 2/21/19 7:57 AM, Juergen Gross wrote:
> On 21/02/2019 00:39, Marek Marczykowski-GÃrecki wrote:
>> On Wed, Feb 20, 2019 at 08:15:30PM +0000, Joao Martins wrote:
>>> 2. PV Driver support (patches 17 - 39)
>>>
>>> We start by redirecting hypercalls from the backend to routines
>>> which emulate the behaviour that PV backends expect i.e. grant
>>> table and interdomain events. Next, we add support for late
>>> initialization of xenbus, followed by implementing
>>> frontend/backend communication mechanisms (i.e. grant tables and
>>> interdomain event channels). Finally, introduce xen-shim.ko,
>>> which will setup a limited Xen environment. This uses the added
>>> functionality of Xen specific shared memory (grant tables) and
>>> notifications (event channels).
>>
>> Does it mean backends could be run in another guest, similarly as on
>> real Xen? AFAIK virtio doesn't allow that as virtio backends need
>> arbitrary write access to guest memory. But grant tables provide enough
>> abstraction to do that safely.
>
> As long as the grant table emulation in xen-shim isn't just a wrapper to
> "normal" KVM guest memory access.
>
> I guess the xen-shim implementation doesn't support the same kind of
> guest memory isolation as Xen does?
>
It doesn't, but it's also two different usecases.
The xen-shim is meant to when PV backend lives in the hypervisor (similar model
as KVM vhost), whereas domU grant mapping that Marek is asking about require
additional hypercalls handled by guest (i.e. in kvm_xen_hypercall). This would
equate to how Xen currently performs grant mapping/unmapping.
Joao