[bionic:linux-azure-4.15][PATCH 0/2] LP#:1875467: Enable invariant TSC

Kelsey Skunberg kelsey.skunberg at canonical.com
Wed Jun 10 04:20:06 UTC 2020


BugLink: http://bugs.launchpad.net/bugs/1875467

These requested commits will enable support for Invariant TSC
in Linux guest VMs. The invariant TSC means that the TSC continues at a
fixed rate regardless of the C-state or frequency of the processor (as
long as the processor remains in the ACPI S0 state).

These patches will allow guests to access the
HvSyntheticInvariantTscControl MSR and set bit 0 of this synthetic MSR,
which then enables the InvariantTSC feature. After setting the synthetic
MSR, CPUID will enumerate support for InvariantTSC.

The following two commits enable support: 

9e0333ae38ee ("clocksource/drivers/hyper-v: Set TSC clocksource as
default w/ InvariantTSC") - Changes are the same, though done in
arch/x86/hyperv/hv_init.c instead of drivers/clocksource/hyperv_timer.
 
dce7cd62754b ("x86/hyperv: Allow guests to enable InvariantTSC") -
required context changes to be backported.

Verify 
Andrea Parri (2):
  x86/hyperv: Allow guests to enable InvariantTSC
  x86/hyperv: Set TSC clocksource as default w/ InvariantTSC

 arch/x86/hyperv/hv_init.c          | 13 +++++++++++--
 arch/x86/include/asm/hyperv-tlfs.h |  6 ++++++
 arch/x86/kernel/cpu/mshyperv.c     |  7 ++++++-
 3 files changed, 23 insertions(+), 3 deletions(-)

-- 
2.25.1




More information about the kernel-team mailing list