Linux-Kernel: Erste Patches gegen erhöhte Leistungsaufnahme
Red-Hat-Entwickler Matthew Garrett hat dem Linux-Kernel zahlreiche Patches spendiert, die die Leistungsaufnahme des Linux-Kernels auf zahlreichen Notebooks reduzieren soll. Sie übernehmen Informationen aus Windows-Treibern.

Seit Linux-Kernel 2.6.38 haben Anwender bemängelt, dass Notebooks damit weniger energiesparend sind als unter Windows. Die Ursache: Die Energiesparmethoden an der PCI-Express-Schnittstelle. Nun hat sich Red-Hat-Mitarbeiter Matthew Garrett mit dem Problem beschäftigt und die INF-Datei der Windows-Treiber nach Informationen durchsucht, welche Hardware Probleme mit dem Active State Power Management (ASPM) hat.
Garrett reicht nach und nach Patches ein, die die richtigen Einstellungen bestimmter Hardware an den Linux-Kernel übermitteln. Zunächst hatten die Entwickler die Unterstützung für ASPM deaktiviert, wenn die Fixed ACPI Description Table (FADT) meldete, dass es von der Hardware nicht unterstützt wird. Da PCI-Express-Geräte auch dann im Ruhezustand viel Leistung aufnehmen, sinkt die Akkulaufzeit um bis zu 30 Prozent. Grund für den Patch waren gemeldete Fehler durch ein stets aktives ASPM, was teilweise zu kompletten Abstürzen führte.
Der Grund dafür taucht laut Garrett dann auf, wenn das BIOS fehlende ASPM-Unterstützung meldet, obwohl sie existiert. Zusätzlich kann es vorkommen, dass das BIOS ASPM auf einigen Geräten aktiviert, dem System aber mitteilt, das ASPM deaktiviert ist. Das bringe Geräte aus dem Tritt und führe zu den Abstürzen, so Garrett. Deshalb habe er den Patch eingereicht, um ASPM immer dann zu deaktivieren, wenn das BIOS dessen fehlende Unterstützung meldet.
Um das Problem der erhöhten Leistungsaufnahme zu beheben, schlägt Phoronix den Kernelparameter pcie_aspm=force vor, mit dem ASPM auch dann aktiviert wird, wenn das BIOS es nicht unterstützt. Unter Umständen stürzt das System dann aber ab.
Nun hat Garrett in den Windows-INF-Dateien die Zeile entdeckt, die Informationen darüber enthält, wie einzelne Hardware mit ASPM umgeht, etwa ob und wann sie ein- oder ausgeschaltet wird. Diese Informationen werden nun als Patches in den Sourcecode des Kernels eingetragen, damit er den ASPM-Status für einzelne Geräte auslesen kann. Erste Patches gibt es bereits für Netzwerktreiber für Atheros-Chipsätze oder für die Treiber für Ethernet-Karten von Jmicron.
Damit lässt sich ASPM nun wieder aktivieren, ohne dass es zu Abstürzen kommt. Die Webseite Phoronix, die den erhöhten Stromverbrauch gemessen hatte, berichtet, dass die bislang eingereichten Patches funktionierten.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
Da kann aber Linux kaum was dafür. Diese Umschaltmechanismen werden ja nirgends richtig...
Schon komisch, unter Windows ist das Installieren von Treibern doch noch viel...
und dennoch ist es die aktuelle Intel-Plattform, bei der der Powerbug besonders stark...