linux-azure: add Icelake servers support in no-HWP mode to cpufreq/intel_pstate driver
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux-azure (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Bionic |
Invalid
|
Undecided
|
Unassigned | ||
Focal |
Fix Released
|
Undecided
|
Bartlomiej Zolnierkiewicz | ||
Hirsute |
Fix Released
|
Undecided
|
Bartlomiej Zolnierkiewicz | ||
Impish |
Fix Released
|
Undecided
|
Bartlomiej Zolnierkiewicz | ||
linux-azure-4.15 (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Bionic |
Fix Released
|
Undecided
|
Bartlomiej Zolnierkiewicz | ||
Focal |
Invalid
|
Undecided
|
Unassigned | ||
Hirsute |
Invalid
|
Undecided
|
Unassigned | ||
Impish |
Invalid
|
Undecided
|
Unassigned |
Bug Description
[SRU Justification]
[Impact]
Starting with the AH2020 Azure host build, Hyper-V is virtualizing some registers that provide information about the CPU frequency. The registers are read-only in a guest VM, so the guest can see the frequency, but cannot make any modifications.
This feature also requires that the VM Configuration Version be 9.2 or later, which means it needs to be a new VM type, such as the just introduced Dv5/Ev5 series, and the new M832v2 VMs.
Within the Linux VM, the presence of the feature is indicated by the “aperfmperf” flag in the “lscpu” flags output (or in the flags field in /proc/cpuinfo).
It turns out there is a Linux kernel limitation when running on the new Intel IceLake processors used for the Dv5/Ev5 series. Upstream commit fbdc21e9b038 was added to provide IceLake support in the 5.14 kernel.
Microsoft has asked to backport fbdc21e9b038 commit to all supported kernels.
[Test Plan]
Run Intel IceLake based VM and check the "aperfmperf" flag in the "lscpu" flags output.
Without the patch the intel_pstate directory is missing from /sys/devices/
[Where problems could occur]
* intel_pstate driver is always used on Intel IceLake based VMs without checking for presence of "aperfmperf" CPU flag.
* In earlier (5.4 and 4.15) linux-azure kernels when intel_pstate driver is used it is in "active" mode instead of "passive" one (as reported by "cat /sys/devices/
If a consistent behavior across all kernel versions is desired commit 33aa46f252c7 ("cpufreq: intel_pstate: Use passive mode by default without HWP") from the upstream should probably also be backported.
* /sys/devices/
[Other Info]
None.
CVE References
Changed in linux-azure (Ubuntu Focal): | |
status: | New → Fix Committed |
Changed in linux-azure (Ubuntu Hirsute): | |
status: | New → Fix Committed |
Changed in linux-azure (Ubuntu Impish): | |
status: | New → Fix Committed |
Changed in linux-azure (Ubuntu): | |
status: | New → Fix Released |
Changed in linux-azure (Ubuntu Focal): | |
assignee: | nobody → Bartlomiej Zolnierkiewicz (bzolnier) |
Changed in linux-azure (Ubuntu Hirsute): | |
assignee: | nobody → Bartlomiej Zolnierkiewicz (bzolnier) |
Changed in linux-azure (Ubuntu Impish): | |
assignee: | nobody → Bartlomiej Zolnierkiewicz (bzolnier) |
Changed in linux-azure-4.15 (Ubuntu Bionic): | |
status: | New → Invalid |
Changed in linux-azure-4.15 (Ubuntu Focal): | |
status: | New → Invalid |
Changed in linux-azure-4.15 (Ubuntu Hirsute): | |
status: | New → Invalid |
Changed in linux-azure-4.15 (Ubuntu Impish): | |
status: | New → Invalid |
Changed in linux-azure-4.15 (Ubuntu Bionic): | |
assignee: | nobody → Bartlomiej Zolnierkiewicz (bzolnier) |
status: | Invalid → Fix Committed |
Changed in linux-azure-4.15 (Ubuntu): | |
status: | New → Invalid |
Changed in linux-azure (Ubuntu Bionic): | |
status: | New → Invalid |
tags: |
added: verification-done-bionic verification-done-focal verification-done-hirsute verification-done-impish removed: verification-needed-bionic verification-needed-focal verification-needed-hirsute verification-needed-impish |
This bug is awaiting verification that the linux-azure/ 5.13.0- 1009.10 kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification- needed- impish' to 'verification- done-impish' . If the problem still exists, change the tag 'verification- needed- impish' to 'verification- failed- impish' .
If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.
See https:/ /wiki.ubuntu. com/Testing/ EnableProposed for documentation how to enable and use -proposed. Thank you!