Received: by 10.223.176.5 with SMTP id f5csp2472810wra; Thu, 8 Feb 2018 14:55:53 -0800 (PST) X-Google-Smtp-Source: AH8x224VrdaRG6MI/aBu5+1i7JI6dapOGFrp+PTyz9vzwrCjmscrIPCaof0EXkxj1SQgLuOOZgBa X-Received: by 10.98.237.6 with SMTP id u6mr634123pfh.190.1518130553488; Thu, 08 Feb 2018 14:55:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1518130553; cv=none; d=google.com; s=arc-20160816; b=JF6JWK8LqmTAtPcWmfxYgBdGUi+4eJ7XBei875snR0P0gyO1vzdi5c/4GCTFRlY+Gz tGabhdYS18OvM8xh1t3ofXV+J+ReoDlUnCNuAxydA8U0RfnOhgXsemN7LZuZghBopgr8 3PVN9J2c9KOuBluzlnlqC9SGrSP1/31s6z+vKq2QPDCyt0JL38xAlBpZ8b2oUV2zS8RN blLETuK/BHugh/NG38Vy0lfjGWmOQRWUIzDrWDjwQ624L+u/CTRf1ETq4TvxeV5w3lOn dfqMxZ77Hyrsb7/pkVAxqnhltxlbGGfbAzWjpJg37eg2LiaTQSjotC9nVayP7UMVzPj3 0FCA== 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 :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=D8nHVoQbyLEpoesFiFz9sVd75hqR6H18ABWslPImLy8=; b=zQdzVghW+pF26brxnzjw2HjhqrCYZPr/7YPLWzItnrQFStc+xKx2egfBS+69XJdEpg qWNcLa1vY5Qb0kLf37Lq8gZn8RcNLZRrHRJ5urT2Y9OQmhkddqxlDaxwDX5gQakqiThU sAIp7L+Dvi/v0q7QTq7fkci4BaNGBfLD2qIEBXMEFLLVK/2OFUQOqPvertwgnd7ecMgb xW+pLDVUHAWieMGeVwZWH0YBFIvpgXpWHnQzk35NHjEkVZVa8shSf4asJtR2SIPAVVJP ZJkQBHb0J+uC1HhtO1IAcWlWu4h5q6d+t3hwdhhu8UWEyIYU4VqyKuwN31r5mMy2sUZ5 Nm3Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amazon.de header.s=amazon201209 header.b=uS3vFg0j; 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; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amazon.de Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id l86si676549pfg.187.2018.02.08.14.55.38; Thu, 08 Feb 2018 14:55:53 -0800 (PST) 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=@amazon.de header.s=amazon201209 header.b=uS3vFg0j; 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; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amazon.de Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752046AbeBHWxn (ORCPT + 99 others); Thu, 8 Feb 2018 17:53:43 -0500 Received: from smtp-fw-6002.amazon.com ([52.95.49.90]:24184 "EHLO smtp-fw-6002.amazon.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751079AbeBHWxm (ORCPT ); Thu, 8 Feb 2018 17:53:42 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amazon.de; i=@amazon.de; q=dns/txt; s=amazon201209; t=1518130422; x=1549666422; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=D8nHVoQbyLEpoesFiFz9sVd75hqR6H18ABWslPImLy8=; b=uS3vFg0jGLGGmOhcIc7mn8KzM/cdYTTMuDLIL/vAuQ1XVA7ngQhHs3RA mXqIz5G6Js4NG44zO5lNytl5tAClz9oGVl53JbECnGkItN+/p+iBe3uHF AOS81gwknzluFvfKuLZEI0Hy33KqUE+vKcRe9r1Lq9DuhpF4cQElz45wQ 4=; X-IronPort-AV: E=Sophos;i="5.46,480,1511827200"; d="scan'208";a="331443618" Received: from iad6-co-svc-p1-lb1-vlan3.amazon.com (HELO email-inbound-relay-2b-55156cd4.us-west-2.amazon.com) ([10.124.125.6]) by smtp-border-fw-out-6002.iad6.amazon.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 08 Feb 2018 22:53:40 +0000 Received: from u54e1ad5160425a4b64ea.ant.amazon.com (pdx2-ws-svc-lb17-vlan3.amazon.com [10.247.140.70]) by email-inbound-relay-2b-55156cd4.us-west-2.amazon.com (8.14.7/8.14.7) with ESMTP id w18MrZcd098167 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 8 Feb 2018 22:53:37 GMT Received: from u54e1ad5160425a4b64ea.ant.amazon.com (localhost [127.0.0.1]) by u54e1ad5160425a4b64ea.ant.amazon.com (8.15.2/8.15.2/Debian-3) with ESMTP id w18MrZMP006692; Thu, 8 Feb 2018 23:53:35 +0100 Received: (from karahmed@localhost) by u54e1ad5160425a4b64ea.ant.amazon.com (8.15.2/8.15.2/Submit) id w18MrY34006691; Thu, 8 Feb 2018 23:53:34 +0100 From: KarimAllah Ahmed To: kvm@vger.kernel.org, linux-kernel@vger.kernel.org Cc: KarimAllah Ahmed , Paolo Bonzini , =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= Subject: [PATCH 2/3] KVM/nVMX: Set the CPU_BASED_USE_MSR_BITMAPS if we have a valid L02 MSR bitmap Date: Thu, 8 Feb 2018 23:53:29 +0100 Message-Id: <1518130410-6583-2-git-send-email-karahmed@amazon.de> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1518130410-6583-1-git-send-email-karahmed@amazon.de> References: <1518130410-6583-1-git-send-email-karahmed@amazon.de> 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 We either clear the CPU_BASED_USE_MSR_BITMAPS and end up intercepting all MSR accesses or create a valid L02 MSR bitmap and use that. This decision has to be made every time we evaluate whether we are going to generate the L02 MSR bitmap. Before commit 086e7d4118cc ("KVM: VMX: Allow direct access to MSR_IA32_SPEC_CTRL") this was probably OK since the decision was always identical. This is no longer the case now since the MSR bitmap might actually change once we decide to not intercept SPEC_CTRL and PRED_CMD. Signed-off-by: KarimAllah Ahmed Cc: Paolo Bonzini Cc: Radim Krčmář Cc: kvm@vger.kernel.org Cc: linux-kernel@vger.kernel.org --- arch/x86/kvm/vmx.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c index 599179b..91e3539 100644 --- a/arch/x86/kvm/vmx.c +++ b/arch/x86/kvm/vmx.c @@ -10130,7 +10130,8 @@ static void nested_get_vmcs12_pages(struct kvm_vcpu *vcpu, if (cpu_has_vmx_msr_bitmap() && nested_cpu_has(vmcs12, CPU_BASED_USE_MSR_BITMAPS) && nested_vmx_merge_msr_bitmap(vcpu, vmcs12)) - ; + vmcs_set_bits(CPU_BASED_VM_EXEC_CONTROL, + CPU_BASED_USE_MSR_BITMAPS); else vmcs_clear_bits(CPU_BASED_VM_EXEC_CONTROL, CPU_BASED_USE_MSR_BITMAPS); -- 2.7.4