Revision 9855d8ce41a7801548a05d844db2f46c3e810166 authored by Stefan Bader on 22 January 2013, 12:37:21 UTC, committed by Rafael J. Wysocki on 22 January 2013, 12:37:21 UTC
To fix incorrect P-state frequencies which can happen on some AMD systems f594065faf4f9067c2283a34619fc0714e79a98d "ACPI: Add fixups for AMD P-state figures" introduced a quirk to obtain the correct values by reading from AMD specific MSRs. This did cause a regression when running a kernel using that quirk under Xen which does (currently) not pass through MSR reads to the HW. Instead the guest gets a 0 in return. And this seems to cause a failure to initialize the ondemand governour (hard to say for sure as all P-states appear to run at the same frequency). While this should also be fixed in the hypervisor (to allow a guest to read that MSR), this patch is intended to work around the issue in the meantime. In discussion it turned out that indeed real HW/BIOSes may choose to not set the valid bit and thus mark the P-state as invalid. So this could be considered a fix for broken BIOSes that also works around the issue on Xen. Signed-off-by: Stefan Bader <stefan.bader@canonical.com> Cc: 3.7+ <stable@vger.kernel.org> Acked-by: Borislav Petkov <bp@suse.de> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
1 parent 8fa938a
File | Mode | Size |
---|---|---|
Kconfig | -rw-r--r-- | 2.8 KB |
Makefile | -rw-r--r-- | 763 bytes |
array.c | -rw-r--r-- | 18.4 KB |
base.c | -rw-r--r-- | 75.2 KB |
cmdline.c | -rw-r--r-- | 651 bytes |
consoles.c | -rw-r--r-- | 2.2 KB |
cpuinfo.c | -rw-r--r-- | 564 bytes |
devices.c | -rw-r--r-- | 1.4 KB |
fd.c | -rw-r--r-- | 8.0 KB |
fd.h | -rw-r--r-- | 412 bytes |
generic.c | -rw-r--r-- | 19.2 KB |
inode.c | -rw-r--r-- | 12.0 KB |
internal.h | -rw-r--r-- | 6.2 KB |
interrupts.c | -rw-r--r-- | 1.1 KB |
kcore.c | -rw-r--r-- | 15.2 KB |
kmsg.c | -rw-r--r-- | 1.5 KB |
loadavg.c | -rw-r--r-- | 1.1 KB |
meminfo.c | -rw-r--r-- | 4.9 KB |
mmu.c | -rw-r--r-- | 1.4 KB |
namespaces.c | -rw-r--r-- | 7.2 KB |
nommu.c | -rw-r--r-- | 3.3 KB |
page.c | -rw-r--r-- | 5.2 KB |
proc_devtree.c | -rw-r--r-- | 5.3 KB |
proc_net.c | -rw-r--r-- | 4.6 KB |
proc_sysctl.c | -rw-r--r-- | 38.9 KB |
proc_tty.c | -rw-r--r-- | 4.7 KB |
root.c | -rw-r--r-- | 5.4 KB |
self.c | -rw-r--r-- | 1.4 KB |
softirqs.c | -rw-r--r-- | 993 bytes |
stat.c | -rw-r--r-- | 5.9 KB |
task_mmu.c | -rw-r--r-- | 34.5 KB |
task_nommu.c | -rw-r--r-- | 7.1 KB |
uptime.c | -rw-r--r-- | 1.3 KB |
version.c | -rw-r--r-- | 761 bytes |
vmcore.c | -rw-r--r-- | 17.6 KB |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...