Re: KVM PV (was: Re: [PATCH v2 2/2] x86/lguest: remove lguest support)

From: Paolo Bonzini
Date: Fri Sep 29 2017 - 12:39:48 EST


On 29/09/2017 17:47, Lai Jiangshan wrote:
> Hello, all
>
> An interesting (at least to me) thinking came up to me when I found
> that the lguest was removed. But I don't have enough knowledge
> to find out the answer nor energy to implement it in some time.
>
> Is it possible to implement kvm-pv which allows kvm to run on
> the boxes without hardware virtualization support, so that
> qemu/kvm can be used on clouds such as aws, azure?

No, please don't. :) Even Xen is moving from PV to PVH (paravirtualized
hardware with event channels, grant tables and the like, but still using
hardware extensions for MMU).

Rather, cloud providers should help getting nested virtualization ready
for production use. At least for KVM it's not that far.

Paolo

> Without hardware virtualization support, the host kvm-pv module and
> the guest linux kernel need to cooperate in some ways. And some kvm
> facilities can help. For instance, the existing shadow-paging, which
> was not introduced when lguest had been added to kernel, could be
> reused to help on mmu virtualization. For guest kernel/userspace
> separation in x86_64, the intel cpu's segment registers can help too.
> (or use a new set of page-table for the guest kernel on amd64).
>
> The thought is quite shallow, but I hope this email brings some
> inspirations rather than annoyance. And I'm sorry if the later things
> would happen.
>
> Thanks,
> Lai.
>
> On Thu, Aug 17, 2017 at 1:31 AM, Juergen Gross <jgross@xxxxxxxx> wrote:
>> Lguest seems to be rather unused these days. It has seen only patches
>> ensuring it still builds the last two years and its official state is
>> "Odd Fixes".
>>
>> Nuke it in order to be able to clean up the paravirt code.
>