[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210105004752.131069-1-amakhalov@vmware.com>
Date: Mon, 4 Jan 2021 16:47:52 -0800
From: Alexey Makhalov <amakhalov@...are.com>
To: <linux-kernel@...r.kernel.org>,
<virtualization@...ts.linux-foundation.org>, <hpa@...or.com>,
<bp@...en8.de>, <mingo@...hat.com>, <tglx@...utronix.de>,
<pv-drivers@...are.com>, <sdeep@...are.com>
CC: Alexey Makhalov <amakhalov@...are.com>
Subject: [PATCH] x86/vmware: avoid TSC recalibration
When TSC frequency is known (retrieved from hypervisor), we should skip
TSC refined calibration by setting X86_FEATURE_TSC_KNOWN_FREQ.
Signed-off-by: Alexey Makhalov <amakhalov@...are.com>
---
arch/x86/kernel/cpu/vmware.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/x86/kernel/cpu/vmware.c b/arch/x86/kernel/cpu/vmware.c
index c6ede3b3d302..83164110ccc5 100644
--- a/arch/x86/kernel/cpu/vmware.c
+++ b/arch/x86/kernel/cpu/vmware.c
@@ -378,6 +378,8 @@ static void __init vmware_set_capabilities(void)
{
setup_force_cpu_cap(X86_FEATURE_CONSTANT_TSC);
setup_force_cpu_cap(X86_FEATURE_TSC_RELIABLE);
+ if (vmware_tsc_khz)
+ setup_force_cpu_cap(X86_FEATURE_TSC_KNOWN_FREQ);
if (vmware_hypercall_mode == CPUID_VMWARE_FEATURES_ECX_VMCALL)
setup_force_cpu_cap(X86_FEATURE_VMCALL);
else if (vmware_hypercall_mode == CPUID_VMWARE_FEATURES_ECX_VMMCALL)
--
2.11.0
Powered by blists - more mailing lists