Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754711AbcCRSEp (ORCPT ); Fri, 18 Mar 2016 14:04:45 -0400 Received: from mail-ob0-f178.google.com ([209.85.214.178]:33458 "EHLO mail-ob0-f178.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751016AbcCRSEm (ORCPT ); Fri, 18 Mar 2016 14:04:42 -0400 MIME-Version: 1.0 In-Reply-To: <56EC41C0.8010706@redhat.com> References: <1458317379-8363-1-git-send-email-pbonzini@redhat.com> <56EC41C0.8010706@redhat.com> From: David Matlack Date: Fri, 18 Mar 2016 11:04:21 -0700 Message-ID: Subject: Re: [PATCH 0/3] KVM: VMX: fix handling inv{ept,vpid} and nested RHEL6 KVM To: Paolo Bonzini Cc: "linux-kernel@vger.kernel.org" , kvm list , jmontleo@redhat.com, bdas@redhat.com Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1704 Lines: 53 On Fri, Mar 18, 2016 at 10:58 AM, Paolo Bonzini wrote: > > > On 18/03/2016 18:42, David Matlack wrote: >> On Fri, Mar 18, 2016 at 9:09 AM, Paolo Bonzini 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. Thanks! > 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. How does this DoS the host? The guest is stuck executing the same instruction over and over, but it's exiting to KVM every time, allowing KVM to reschedule the VCPU. I would agree it DoSes the guest. > > 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 >> >>> 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 >>>