Received: by 2002:a05:6a10:6006:0:0:0:0 with SMTP id w6csp1628386pxa; Fri, 28 Aug 2020 19:53:36 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzc4k72Qe2NFQfcrBEXXZDMgANq0ZlGOE5PzsgkZI0zI9PSUYisTpnCn94BfmSw+f5Ohp/S X-Received: by 2002:a17:906:6558:: with SMTP id u24mr1632833ejn.364.1598669616188; Fri, 28 Aug 2020 19:53:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1598669616; cv=none; d=google.com; s=arc-20160816; b=xM/nzJ0S54kwpBdwd7JByPKiCUDnFS+PsyyFfHGWC2X8AUA9J7RMHlesef563RkHU7 MnNSTmbewme+L6kUUQrfy/mo9ODCVre1tYZ5l4Av4uHysm4ysFT62esORh+M2GFjnToy uD/jyAIMed5r2i6mkmWveBFwJJ7ypSBAoKF29Nutl2GY8G22UwyKGgK7OnRLh2d8lARs 6fUhGpAXwin4jfQayOmSMX9+MF2FrbpneHJtJSB6tP5lXv7bWfwepZryKU08yMGs8335 kLFadmJridZavRbdFldJVC/UxwUtbFc6WFvZ4El8Ldl1cdXcSJc73iBvOVFPCAhDhKtX na8A== 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 :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:ironport-sdr:ironport-sdr; bh=/qZXpnZks9q748TmtfSrAoEv8jrzWqoC6p2i2hpNs5U=; b=L3JZAMRK8P/Cj6l+qYrReYk+ksdBwIrS5auPbaog1sOXbBczfZFZdWJb4uryQmEkQZ i91SWIBgrTpadIQqqbcT9UBnXMkFspPbfzpCpNZvVD8L40c4HLeUe3wQXpK9FMkpyV6C Er3VI5A9fU9nSLtnFBUBPk/yjTWTmqJp53dOyzQPY/KoaqB+FlvIHxjJK0+BYEzsmzZv jqAjUYQGtbAKoYMk/Vgj5bOnx1iS7dtOc59c/0/IH5R1swTFVMAChxWje8bhPP/0baQL 773tpzI/ASfqTwzKK6un11uBAnjFnKVqKs6cv3soihNJIoCQ2sO+EBSi3xZd9VUap1vU Ph1A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id lw23si1001113ejb.741.2020.08.28.19.53.13; Fri, 28 Aug 2020 19:53:36 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726968AbgH2Cvx (ORCPT + 99 others); Fri, 28 Aug 2020 22:51:53 -0400 Received: from mga06.intel.com ([134.134.136.31]:62212 "EHLO mga06.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726460AbgH2Cvx (ORCPT ); Fri, 28 Aug 2020 22:51:53 -0400 IronPort-SDR: 8mTdMjcQdMH1UOY3aVTWyGXfW9ubOv8shkX3PYtroC0uPb+HkJD1mRcsPJ3av6H6oHkxSIasuO E9oL2O1xFUYA== X-IronPort-AV: E=McAfee;i="6000,8403,9727"; a="218325043" X-IronPort-AV: E=Sophos;i="5.76,366,1592895600"; d="scan'208";a="218325043" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Aug 2020 19:51:52 -0700 IronPort-SDR: nXToNeIKugJp6cS9bPH9eXz6pmgmYpZ4D6j+NQLTaLUrOBzjDJPVuSJ4LHYpV2gQ97pLxJn0JR AtyedJXORm+g== X-IronPort-AV: E=Sophos;i="5.76,366,1592895600"; d="scan'208";a="475939800" Received: from jli113-mobl1.ccr.corp.intel.com (HELO [10.254.212.55]) ([10.254.212.55]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Aug 2020 19:51:50 -0700 Subject: Re: [PATCH 1/5] KVM: nVMX: Fix VMX controls MSRs setup when nested VMX enabled To: Chenyi Qiang , Jim Mattson Cc: Paolo Bonzini , Sean Christopherson , Vitaly Kuznetsov , Wanpeng Li , Joerg Roedel , kvm list , LKML References: <20200828085622.8365-1-chenyi.qiang@intel.com> <20200828085622.8365-2-chenyi.qiang@intel.com> <534a4ad5-b083-1278-a6ac-4a7e2b6b1600@intel.com> From: Xiaoyao Li Message-ID: <1fbfb77d-4f28-bcb6-a95c-f4ac7a313d2d@intel.com> Date: Sat, 29 Aug 2020 10:51:47 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0 MIME-Version: 1.0 In-Reply-To: <534a4ad5-b083-1278-a6ac-4a7e2b6b1600@intel.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 8/29/2020 9:49 AM, Chenyi Qiang wrote: > > > On 8/29/2020 1:43 AM, Jim Mattson wrote: >> On Fri, Aug 28, 2020 at 1:54 AM Chenyi Qiang >> wrote: >>> >>> KVM supports the nested VM_{EXIT, ENTRY}_LOAD_IA32_PERF_GLOBAL_CTRL and >>> VM_{ENTRY_LOAD, EXIT_CLEAR}_BNDCFGS, but they doesn't expose during >>> the setup of nested VMX controls MSR. >>> >> >> Aren't these features added conditionally in >> nested_vmx_entry_exit_ctls_update() and >> nested_vmx_pmu_entry_exit_ctls_update()? >> > > Yes, but I assume vmcs_config.nested should reflect the global > capability of VMX MSR. KVM supports these two controls, so should be > exposed here. No. I prefer to say they are removed conditionally in nested_vmx_entry_exit_ctls_update() and nested_vmx_pmu_entry_exit_ctls_update(). Userspace calls vmx_get_msr_feature() to query what KVM supports for these VMX MSR. In vmx_get_msr_feature(), it returns the value of vmcs_config.nested. As KVM supports these two bits, we should advertise them in vmcs_config.nested and report to userspace.