Si è più e più volte detto della principale (ma non unica!) causa dell´esagerato consumo energetico di Linux (sul banco degli imputati è la gestione dell´Active State Power Management per PCI Express), ma s´è anche detto di una patch approdata sulle distribuzioni Ubuntu (11.04+) e su tutti i kernel Linux dal 3.0.1 innanzi, per una sua possibile soluzione.
Come stanno in realtà le cose? Phoronix come sempre fa luce e indaga, dati alla mano.
Essendo stati scoperti alcuni problemi di funzionamento con alcune periferiche, i kernel dal 2.6.38 in su non forzano l´ASPM per i dispositivi PCI-E se il BIOS non li istruisce in tal senso, con il risultato di consumare molta più energia dacché molti BIOS non fanno menzione se si debba o meno attivare la funzionalità: la "colpa" è quindi dei BIOS "mal progettati", e il tutto dovrebbe esser gestito a livello di driver, cosa che su Linux non avviene.
E questo lo sappiamo: arriviamo ora al comportamento del fix di cui sopra.
La patch inizializza il registro di stato MSR_IA32_ENERGY_PERF_BIAS a "normal"; eventualmente sarà poi impostato a "performance" (più veloce, più energia usata) quando e se servirà. È quindi un "trucco" per cercare di risolvere la situazione da un punto di vista diverso.
Il registro è però usato solamente dalle recenti CPU Intel, e lascia scoperto tutto il resto. Detto in altre parole, il pessimo consumo energetico rimarrà... pessimo se non si possiede un moderno PC con CPU Intel, come ben visibile nell´immagine di apertura, dalla quale si evince che l´unica maniera per tornare a un consumo "pre-2.6.38" è forzare il famoso parametro pcie_aspm=force.
In conclusione, il bug-fix non era per nulla un bug-fix, ma una presa in giro.