Linux 3.2 Is Still Looking To Be Power Hungry
The PCI subsystem pull for the Linux 3.2 kernel was published on Friday evening. If you were hoping it would rework PCI-E ASPM (Active-State Power Management) to be more like the Windows implementation or for more PCI drivers to be setting the bits directly to support it (effectively white-listing drivers/hardware), it didn't happen yet.
The main PCI pull request for Linux 3.2 has some MPS (Maximum Payload Size) and PASID (Process Address Space ID) stuff, but nothing to improve the Linux PCI-E ASPM situation.
The only PCI power management related changes in this pull is extending PME (PCI Power Management Events) polling to all PCI devices. The extended PME polling is talked about in , but it's not related to the ASPM problems.
By now most users should be aware that the big Linux power regression in the Linux 2.6.38 kernel that I spotted prior to the Ubuntu 11.04 release I ended up tracking to be due to a change in PCI-E ASPM. With Linux 2.6.38+, unless Active-State Power Management support is explicitly advertised by the hardware's BIOS (or the user overrides the support when booting the kernel), it's no longer being enabled.
To address this issue, the thinking of kernel developers is that they will need to determine a better way to determine proper PCI-E ASPM support (such as mirroring how Microsoft Windows treats ASPM detection and handling) or be manually having individual component drivers flag whether or not the hardware installed can handle this power management feature that's part of the PCI Express specification.
Unfortunately, nothing ASPM-related has landed for Linux 3.2. THe Linux 3.2 PCI pull request can be viewed at LKML.org.
Yes, there are numerous other Linux power problems too. Here's one that just hit my email inbox over the night from a Phoronix reader.
I've been testing the it87 driver and noticed my Vcore was 1.08 instead of 0.96 when idle. At first I thought it was a driver bug.
Latest Articles & Reviews
Latest Linux News
Most Viewed News This Week