Comment 209 for bug 760131

Revision history for this message
madbiologist (me-again) wrote :

@Julian - There are actually 3 power regressions discussed in this bug. The biggest one seems to have occurred between the 2.6.37 kernel and Natty's 2.6.38 kernel, when Active-State Power Management (ASPM) was disabled. This was done as some BIOS's have broken support for ASPM and linux will hang on those machines when trying to use ASPM. It was therefore decided to play it safe and disable ASPM in linux for all hardware. This power regression is not very hardware specific at all - it affects any machine with a PCI Express motherboard.

You can force ASPM by adding pcie_aspm=force to your GRUB boot command line. This should work for many systems, but if your system's BIOS/hardware is in bad shape, you may get system hangs.

The fix in comment #164 (on the basis of which this bug was marked as fixed, in combination with comment #168) corrects a much smaller power regression in EPB (energy/performance bias), specfically the value of MSR_IA32_ENERGY_PERF_BIAS. This in fact may not even be a regression, but simply a new addition of support for an energy-saving feature. It is very hardware specific - MSR_IA32_ENERGY_PERF_BIAS was only introduced in the recent Intel "Westmere" Xeon CPUs and the even more recent Intel "Sandy Bridge" CPUs.

Older Intel hardware and non-Intel hardware does not use this MSR. You can also check whether your system supports this feature by looking for the "epb" flag in /proc/cpuinfo. Within the dmesg output should also be ENERGY_PERF_BIAS messages, if being used.

It is worth noting that the original reporter of this bug has an older CPU that does not support the energy performance bias MSR.