** Changed in: linux-azure-4.15 (Ubuntu Bionic)
Status: Confirmed => Fix Committed
** Changed in: linux-azure (Ubuntu Focal)
Status: Confirmed => Fix Committed
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux-azure in Ubuntu.
https://bugs.launchpad.net/bugs/1875467
Title:
Enable Invariant TSC Support
Status in linux-azure package in Ubuntu:
Invalid
Status in linux-azure-4.15 package in Ubuntu:
Invalid
Status in linux-azure source package in Bionic:
Invalid
Status in linux-azure-4.15 source package in Bionic:
Fix Committed
Status in linux-azure source package in Eoan:
Won't Fix
Status in linux-azure-4.15 source package in Eoan:
Invalid
Status in linux-azure source package in Focal:
Fix Committed
Status in linux-azure-4.15 source package in Focal:
Invalid
Bug description:
[Impact]
Microsoft would like to request two commits in all releases supported
on Azure. These commits benefit SAP workloads.
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")
dce7cd62754b ("x86/hyperv: Allow guests to enable InvariantTSC")
[Test Case]
If the hardware supports TSC scaling, Hyper-V will set bit 15 of the
HV_PARTITION_PRIVILEGE_MASK in guest VMs with a compatible Hyper-V
configuration version. Bit 15 corresponds to the AccessTscInvariantControls
privilege. If this privilege bit is set, guests can access the
HvSyntheticInvariantTscControl MSR: guests can set bit 0 of this synthetic MSR
to enable the InvariantTSC feature.
After setting the synthetic MSR, CPUID will enumerate support for
InvariantTSC.
To check available and current clocksource, run the following:
cat /sys/devices/system/clocksource/clocksource0/available_clocksource
cat /sys/devices/system/clocksource/clocksource0/current_clocksource
[Regression Potential]
If the patches fail to enable support for Invariant TSC or doesn't set
the TSC clocksource as the default when Invariant TSC is available,
while this would be an error it wouldn't be a regression. Possibility
of finding problems using the TSC clocksource once support has been
enabled.
a 4.15 test kernel was sent to Microsoft for testing. Result came back
verified to allow enabling support for Invariant TSC and there was no
report of known regression.
The 4.15, 5.3, & 5.4 kernels with patches applied were boot tested and
verified no changes to dmesg logs relating to clocksource or tsc. tsc
autotest ran successfully on the 4.15 before and after applying the
requested patches.
We are no longer interested in applying to Eoan/linux-azure (5.3) and
only targeted to apply the patches to bionic/azure-4.15 and focal/azure.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux-azure/+bug/1875467/+subscriptions
--
Mailing list: https://launchpad.net/~kernel-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kernel-packages
More help : https://help.launchpad.net/ListHelp