Received: by 2002:a25:ad19:0:0:0:0:0 with SMTP id y25csp416908ybi; Fri, 26 Jul 2019 11:59:21 -0700 (PDT) X-Google-Smtp-Source: APXvYqy5F2csvfUN1MPsO/QrOkVRS2blDalLZFsIwlDk+0DChF2PdU+blJvcHe2ez7wbbfzPi5MQ X-Received: by 2002:aa7:9481:: with SMTP id z1mr23932120pfk.92.1564167560920; Fri, 26 Jul 2019 11:59:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1564167560; cv=none; d=google.com; s=arc-20160816; b=XedzMflLCI3uds4P157BWtfszO3rW5u29cNSnuYyPGfJVbngOLMWFmwhAKLJKTnVtU 4JnQV1ztMWjxfwYo/HCsOeZ/HwSoWsjKPEYQUAqqjb2DyeXE/x2zO/Z6Lh2aoLvx+xmN tThsaniFjqXEpzt/yH1iAnikPCUWK4db5F9gsLfNHAvhQ8ZwnGmobHyZ2B4ZaLylAae+ dyvWYw3QqhXTE/q0WiSD+hv1Q3PnfTCcckyiv1kx5Mwcho+vdNTXvfUbEwqe9G5YjrLd +3IhVp2nVuB8YR/Vu8LFaxsHHkkVDgBFPwh27CDkUPbnsjRaTYWOfReydRY8p/9GQn7f EPlA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=0ydOEJszUKdOgxrzRrikZeZVh3s9VWJkcSezFsCtog4=; b=VB+GnRNOhC/BHu9df8ET88e52711kNZLePWdI3ceY7Fe9hO2+W6YOZ1UR+D5Kfk+rt QeB/fPDgrmfXXAVn2Va4ezIBlFb/F0JFROdjjN+THVESTxzolacuaU4xCrREtzE8tmPb efHLojdI5OP/8D9kGsYhpGbmBQ54ceERV/qCWh0jh1Kg3C9JCcvH5ZolVPxys9nVHPj1 uj0q1ZAg8DO9Si7NrFsXUAWLRsuDNot+F48oWphb3ArMFEHfYHCDZiUNPqki4ZIw9Deu fB5WYRWg5gFE4qMg5q4AHKt+4GbyTrvI8rsWYWCKbMxTaYH3RiPyjr1a0gPabPNZZBKu 42gA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=qIsx4s1y; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id n13si19995915pff.46.2019.07.26.11.59.05; Fri, 26 Jul 2019 11:59:20 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=qIsx4s1y; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388070AbfGZPcA (ORCPT + 99 others); Fri, 26 Jul 2019 11:32:00 -0400 Received: from mail.kernel.org ([198.145.29.99]:46994 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388577AbfGZPby (ORCPT ); Fri, 26 Jul 2019 11:31:54 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id D366922CD1; Fri, 26 Jul 2019 15:31:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1564155113; bh=H+PFAhJnfasRI2CQQwAOMPBazNoKG0UptdFUcKC+uqs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=qIsx4s1yyGIJzMObshp0+zJc+NZFmGitfuwY8jL61moxe/F+/eTXoLqZ1ZM1g9ZaL +TSoGa6M9TCCusgYp07GH4Ks5BHhKq/JbZGbtphTdR4PLZXoou3ZwDLxypsxnxrtbS 73tWcWgvc5NjDpv74gud8LQMuanx2YTZMuZ1NQnM= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Jan Kiszka , Liran Alon , Paolo Bonzini Subject: [PATCH 5.1 58/62] KVM: nVMX: Clear pending KVM_REQ_GET_VMCS12_PAGES when leaving nested Date: Fri, 26 Jul 2019 17:25:10 +0200 Message-Id: <20190726152308.052374385@linuxfoundation.org> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20190726152301.720139286@linuxfoundation.org> References: <20190726152301.720139286@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Jan Kiszka commit cf64527bb33f6cec2ed50f89182fc4688d0056b6 upstream. Letting this pend may cause nested_get_vmcs12_pages to run against an invalid state, corrupting the effective vmcs of L1. This was triggerable in QEMU after a guest corruption in L2, followed by a L1 reset. Signed-off-by: Jan Kiszka Reviewed-by: Liran Alon Cc: stable@vger.kernel.org Fixes: 7f7f1ba33cf2 ("KVM: x86: do not load vmcs12 pages while still in SMM") Signed-off-by: Paolo Bonzini Signed-off-by: Greg Kroah-Hartman --- arch/x86/kvm/vmx/nested.c | 2 ++ 1 file changed, 2 insertions(+) --- a/arch/x86/kvm/vmx/nested.c +++ b/arch/x86/kvm/vmx/nested.c @@ -212,6 +212,8 @@ static void free_nested(struct kvm_vcpu if (!vmx->nested.vmxon && !vmx->nested.smm.vmxon) return; + kvm_clear_request(KVM_REQ_GET_VMCS12_PAGES, vcpu); + vmx->nested.vmxon = false; vmx->nested.smm.vmxon = false; free_vpid(vmx->nested.vpid02);