Re: [PATCH 0/3] KVM: VMX: fix handling inv{ept,vpid} and nested RHEL6 KVM

From: Paolo Bonzini
Date: Fri Mar 18 2016 - 13:58:40 EST




On 18/03/2016 18:42, David Matlack wrote:
> On Fri, Mar 18, 2016 at 9:09 AM, Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote:
>> Patches 1 and 2 fix two cases where a guest could hang at 100% CPU
>> due to mis-emulation of a failing invept or invvpid.
>
> Will you be sending out kvm-unit-test test cases for these?

Yes, of course, especially for patches 1 and 2. However I first want to
add a --enable-unsafe option for stuff that breaks particularly badly
when the test fails. We don't do nested virt CVEs (yet), but all of
these would be treated as vulnerabilities if we did---the tests would
effectively DoS the host.

The infamous #AC failure could also be under a flag like that, and I
remember a similar topic popping up with a LAPIC fix from Google.

Paolo

>>
>> Patch 3 works around a bug in RHEL6 KVM, which is exposed by nested
>> VPID support; RHEL6 KVM uses single-context invvpid unconditionally,
>> but until now KVM did not provide it.
>>
>> Paolo
>>
>
> For the series,
>
> Reviewed-by: David Matlack <dmatlack@xxxxxxxxxx>
>
>> Paolo Bonzini (3):
>> KVM: VMX: avoid guest hang on invalid invept instruction
>> KVM: VMX: avoid guest hang on invalid invvpid instruction
>> KVM: VMX: fix nested vpid for old KVM guests
>>
>> arch/x86/kvm/vmx.c | 16 +++++++++++++++-
>> 1 file changed, 15 insertions(+), 1 deletion(-)
>>
>> --
>> 1.8.3.1
>>