Received: by 2002:a05:6a10:1287:0:0:0:0 with SMTP id d7csp1108431pxv; Fri, 16 Jul 2021 01:38:08 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz7jak3c9LRFKEzvZlDinSkAE0BzuRz/+5QMhooQAd617eyTMMtE60KL+ztxovk3KZlVdWK X-Received: by 2002:a50:cdcb:: with SMTP id h11mr13120141edj.366.1626424688407; Fri, 16 Jul 2021 01:38:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626424688; cv=none; d=google.com; s=arc-20160816; b=r3VWRGX/4XP/50KlmF8Bg/NhnG3Z5C4lhwjba5uKTb0L1cb7QChxS+fddyStOv8nqY LN056bI+CVPS5BWMfnY7YR65owYni5PvTW98zfJLV8F42LcQl6JUzp3lPGGZMHaGIx2S bCvHXJ6Fjq2gjnqEXQb7/yK6anYoarQiibETyr7JdGfEHqpCTgPad0y6SVCsw5q0bmRk EY+XENeamtCaazVqg3t46PqaAjZYObFo9H9+caL7eFlf1akE8PuZmamIPgA8TRd5FxmN J00r4+xq9s7ESJYaUNNjYiv3u57w90H5+PnEA8EaWwL4vlqrS6pglx4R5vC+Wfm0ujdv 08Gw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:in-reply-to:message-id:date:subject :cc:to:from; bh=/+QYt7k/bo9Q5udu0Np8lgoIMG+5XmgZt4aDMVpF0OU=; b=na2US02WdwfW/6GZkKnSykUVEzmx8u1EvaTYxvjWcS0hVOG2KcG9sYSR9Cf77H/10o YxTOQJorhmgPNnud4CF1muBzoerRWfis56MOLDEXAU6Pf8FUYg4F/x8aMZ1ZcnWEcpR6 sWz1fR13jtniuKD7zk5K09x1s6Byoc+3BPkeKAEDG9y3tz6TjAq4rDpfIUhAdAY4YY9g d38JSvZ6gMcTdFEFGUgWrv1Szgzg5RkwTUPC7rlz0J+bV/1ziv0SY5I/aHKiCvknRcuW bAOkqe4ym+0aCHNHreBD2l9z/zrZ0Xi+c6+KzU1cMIW5VXQFm+iDTZY/LnEQq4afRzBY crJg== 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 qa18si10267764ejc.491.2021.07.16.01.37.45; Fri, 16 Jul 2021 01:38:08 -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 S238342AbhGPIjY (ORCPT + 99 others); Fri, 16 Jul 2021 04:39:24 -0400 Received: from mga09.intel.com ([134.134.136.24]:15663 "EHLO mga09.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238274AbhGPIjR (ORCPT ); Fri, 16 Jul 2021 04:39:17 -0400 X-IronPort-AV: E=McAfee;i="6200,9189,10046"; a="210687281" X-IronPort-AV: E=Sophos;i="5.84,244,1620716400"; d="scan'208";a="210687281" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Jul 2021 01:36:22 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,244,1620716400"; d="scan'208";a="460679738" Received: from michael-optiplex-9020.sh.intel.com ([10.239.159.182]) by orsmga008.jf.intel.com with ESMTP; 16 Jul 2021 01:36:20 -0700 From: Yang Weijiang To: pbonzini@redhat.com, jmattson@google.com, seanjc@google.com, vkuznets@redhat.com, wei.w.wang@intel.com, like.xu.linux@gmail.com, kvm@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Yang Weijiang Subject: [PATCH v6 03/12] KVM: x86: Add Arch LBR MSRs to msrs_to_save_all list Date: Fri, 16 Jul 2021 16:49:57 +0800 Message-Id: <1626425406-18582-4-git-send-email-weijiang.yang@intel.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1626425406-18582-1-git-send-email-weijiang.yang@intel.com> References: <1626425406-18582-1-git-send-email-weijiang.yang@intel.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Arch LBR MSR_ARCH_LBR_DEPTH and MSR_ARCH_LBR_CTL are {saved|restored} by userspace application if they're available. Suggested-by: Jim Mattson Signed-off-by: Yang Weijiang Reviewed-by: Jim Mattson --- arch/x86/kvm/x86.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index e0f4a46649d7..b586a45fce2b 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -1298,6 +1298,7 @@ static const u32 msrs_to_save_all[] = { MSR_ARCH_PERFMON_EVENTSEL0 + 12, MSR_ARCH_PERFMON_EVENTSEL0 + 13, MSR_ARCH_PERFMON_EVENTSEL0 + 14, MSR_ARCH_PERFMON_EVENTSEL0 + 15, MSR_ARCH_PERFMON_EVENTSEL0 + 16, MSR_ARCH_PERFMON_EVENTSEL0 + 17, + MSR_ARCH_LBR_CTL, MSR_ARCH_LBR_DEPTH, }; static u32 msrs_to_save[ARRAY_SIZE(msrs_to_save_all)]; @@ -6049,6 +6050,11 @@ static void kvm_init_msr_list(void) min(INTEL_PMC_MAX_GENERIC, x86_pmu.num_counters_gp)) continue; break; + case MSR_ARCH_LBR_DEPTH: + case MSR_ARCH_LBR_CTL: + if (!kvm_cpu_cap_has(X86_FEATURE_ARCH_LBR)) + continue; + break; default: break; } -- 2.21.1