PCI-E ASPM Change For The Linux 3.4 Kernel
First of all, this was the last pull request where Jesse Barnes of Intel is handling the role as maintainer of the Linux PCI sub-system. Jesse has announced he's handing off the PCI maintainer role to Bjorn Helgaas, a software engineer at Google. "He's been a core PCI and Linux contributor for some time now, and has kindly volunteered to take over. I just don't feel I have the time for PCI review and work that it deserves lately (I've taken on some other projects), and haven't been as responsive lately as I'd like, so I approached Bjorn asking if he'd like to manage things. He's going to give it a try, and I'm confident he'll do at least as well as I have in keeping the tree managed, patches flowing, and keeping things stable."
Bjorn Helgaas has been an engineer at Google for the past year while previous to that he served for more than a decade at Hewlett-Packard as a Linux kernel developer.
The PCI pull itself this time is relatively uninteresting, but there's one more PCI Express Active State Power Management (PCI-E ASPM) change from Red Hat's Matthew Garrett.
Matthew was the one that came up with the proper Linux kernel ASPM fix back in November after earlier in the year I had pointed out this very serious kernel power regression. His fix, which entered the Linux 3.3 kernel and has since been back-ported to stable branches, remains valid.
What Matthew's changing this time about this PCI Express power-savings feature is support for setting the default PCI-E ASPM default policy. Now, alternatively, distribution vendors can set this default power management policy to use regardless of what the BIOS exposes to the operating system. "Distributions may wish to provide different defaults for PCIE ASPM depending on their target audience. Provide a configuration option for choosing the default policy."
From the Linux kernel build configuration there is now a PCI-E ASPM option where one can choose to use the default BIOS PCI-E ASPM state (this remains the default), enforce the power-saving mode where PCI Express ASPM L0s and L1 are set even if the BIOS did not, or enforce the performance mode where PCI Express ASPM L0s and L1 are disabled even if the BIOS has them set to be enabled. Most Linux distributions, however, will likely stick to using the BIOS defaults policy.
The Linux 3.4 PCI pull request can be found, as usual, on the Linux kernel mailing list.