Kernel-Log – Was 2.6.31 bringt (5): Der Rest

Trends & News | Kernel-Log

Neue Treiber für USB 3.0 und das Netbook Aspire One von Acer. Distributionen sollen in Zukunft den neueren Firewire-Stack nutzen, der nun LAN-Support bietet. CUSE emuliert das Open Sound System mit einem Userspace-Programm.

Am vergangenen Freitag veröffentlichte Linus Torvalds die achte Vorabversion von Linux 2.6.31. Es soll die letzte sei, wie der Chefentwickler in der Freigabe-Mail betont. Er sei die nächste Woche tauchen und hofft auf derzeit auf eine Veröffentlichung von 2.6.31 zum amerikanischen Labor Day, der dieses Jahr auf den 7. September fällt.

Da bis dahin nur mehr Fehlerkorrekturen in den Hauptentwicklungszweig einfließen dürften soll der fünfte und letzte Teil der Kernel-Log-Mini-Serie "Was 2.6.31 bringt" nun die detaillierte Übersicht über die Neuerungen der kommenden Kernel-Version abschließen. Dabei kommen all die Subsysteme zum Zuge, die in den vorangegangenen Teilen kein Platz gefunden haben – im wesentlichen Treiber und Treiber-nahe Infrastruktur wie die ACPI- und PCI-Subsysteme. Auf der letzten Seite dieses Artikels finden sich zudem noch einige Nachzügler aus den bereits zuvor besprochenen Bereichen.

Kernel-Log – Was 2.6.31 bringt

Weitere Teile aus der Kernel-Log-Mini-Serie "Was 2.6.31 bringt", die wichtigsten Neuerungen der kommenden Kernel-Version zusammenfasst:

1. Netzwerk – Neue Treiber für LAN und WLAN

2. Audio & Video – KMS für Radeon und Treiber für X-Fi

3. Storage & Dateisysteme – Btrfs aufgebohrt, IDE-Subsystem auf dem Abstellgleis

4. Hinter den Kulissen - Tracing, Virtualisierung, Architektur

Der Artikel "Feintuning – Die Neuerungen von Linux 2.6.30" bietet eine Übersicht über die Neuerungen der derzeit aktuellen Kernel-Version der Hauptentwicklungslinie. Weitere Geschehnisse rund um den Linux-Kernel und andere Hardware-nahe Linux-Software finden Sie in den regulären Kernel-Logs Erwähnung.

Unter den Änderungen USB-Subsystem findet sich wie erwartet der maßgeblich von Intel-Programmierern entwickelten Code zur Unterstützung von USB-3.0-Controllern mit ihrem Extensible Host Controller Interface (xHCI) (u. a. 1, 2, 3, 4, 5). Einige Hersteller haben zwar schon Details zu USB-3.0-Hardware angekündigt, erhältlich ist aber bislang keine. Kurzfristig ist die USB-3.0-Unterstützung von Linux daher für den Endanwender nicht weiter wichtig – langfristig sieht es aber vermutlich anders auf, immerhin hatten die beiden vorangegangenen Generation der USB-Schnittstelle durchschlagenden Erfolg.

Einen Überblick über die Änderungen am Firewire-Code geben die zwei Haupt-Git-Pull-Request des Firewire-Maintainers Stefan Richter (1, 2). Dabei hebt er unter anderem die neue Unterstützung für "IPv4 over IEEE 1394" (also Netzwerk via Firewire) im neueren der beiden Firewire-Stacks des Linux-Kernels hervor. Er betont ferner, dass der neuere, "firewire" genannte Stack nun nicht mehr als experimentell gilt und Distributoren diesen in Zukunft bevorzugt eingesetzten sollen: Er liefere bessere Performance, sei kompatibler, biete mehr Features und sei auch sicherer. Der alte, "ieee1394" genannte Stack sei jedoch noch für Audio-Hardware und die vom Treiber firedtv unterstützten FireWire-DVB-Geräte zu bevorzugen.

Bei 2.6.31 wird das auf FUSE (Filesystem in Userspace) aufsetzende CUSE (Character device in Userspace) Bestandteil von Linux. Mit seiner Hilfe kann ein Userspace-Programm virtuelle Geräte emulieren, auf die andere Programme über die normalen, zeichenorientierten Device-Dateien genauso zugreifen können wie auf ein "richtiges", von einem Kernel-Treiber bereitgestelltes character device.

Damit lässt sich etwa ein Userspace-Programm schreiben, das das veraltete OSS (Open Sound System) emuliert; dazu legt es mit Hilfe von CUSE die von OSS-Programmen erwarteten Devices an, über die es dann die Daten annimmt, verarbeitet und mit Hilfe des heute gängigen Alsa ausgibt. Genau solch einen OSS-Proxy hat der bei Novell beschäftige Entwickler von CUSE veröffentlicht und zum Testen eingesetzt. Weitere Hintergründe und andere Einsatzmöglichkeiten von CUSE liefert ein älterer LWN.net-Artikel.

Der Staging-Bereich mit seinen Treibern, die den Qualitätsansprüchen der Kernel-Hacker nicht genügen, hat mittlerweile einen beachtlichen Umfang angenommen. In diesem Entwicklungszyklus ist er aber etwas kleiner geworden, wie Greg Kroah-Hartman im Git-Pull-Request für Staging-Änderungen hervorhebt ("We are removing more crap than we are adding, looks like progress to me! :)"). Das ist hauptsächlich der Zusammenlegung einiger Treiber für WLAN-Chipsätze von Ralink zu verdanken, die das Kernel-Log bereits thematisierte.

Neben den dort ebenfalls erwähnten WLAN-Treibern rtl8192su und vt6655 ist auch der Netzwerk-Treiber octeon-ethernet für SOCs aus der Octeon-Familie von Cavium neu im Staging-Bereich. Auch der CPC-CAN-USB-Treiber cpc-usb und der rudimentäre Framebuffertreiber udlfb (1, 2) für DisplayLink-Geräte stießen zum nun zu Ende gehenden Entwicklungszyklus zum Kernel.

Entfernt haben die Entwickler serqt_usb, da ein Kernel-Hacker einen alternativen Treiber für dieselbe Hardware von Grund auf neu geschrieben hat – es ist nicht der erste und vermutlich nicht der letzte Staging-Treiber, bei dem sich die Kernel-Entwickler zum Schreiben eines neuen Treibers entschließen, statt einen der "mistigen" Staging-Treiber zu verbessern.

Bei den bisher genannten Neuerungen handelt es sich nur um die bedeutsamsten Änderungen. Einige weitere im Kurzüberblick:

Notebooks:

  • Die Kernel-Hacker haben den Treiber acerhdf integriert, mit dem sich beim Netbook Aspire One von Acer die Temperaturen auslesen und Lüfter steuern lassen.
  • Der Treiber asus_acpi gilt fortan als "deprecated" – empfohlen wird statt dessen der Einsatz von asus-laptop.

USB:

Verschiedenes:

  • Die Änderungen im PCI-Subsystem sind weniger tiefgreifend als bei 2.6.30, wie Jesse Barnes in seinem Git-Pull-Request erklärt. Eine der größeren Neuerungen sei die verbesserte Unterstützung für PCI Express Root Port Advanced Error Reporting (AER). Das PCI-Subsystem beherrscht nun Address Translation Service (ATS) 1.0. Im IOMMU-Code, der nun IOMMU Pass Through unterstützt, enthält einen flexibleren Workaround für Grafikkartentreiber, durch den die Konfigurations-Option CONFIG_DMAR_GFX_WA verschwindet.
  • Im Power-Management-Bereich nahmen die Kernel-Hacker um Rafael J. Wysocki primär Aufräumarbeiten vor.
  • Neu bei Linux 2.6.31 ist der einmal pro Sekunde feuernde Pulsegeber LinuxPPS (Linux Pulse Per Second), auf den Userspace-Anwendungen wie NTPD zurückgreifen können; weitere Details zu den Einsatzzwecken und Hintergründen finden sich im LinuxPPS-Wiki und der Kernel-Dokumentation.

Die englischen Überschriften von zahlreichen weiteren nicht ganz so wichtigen, aber keineswegs unbedeutenden Änderungen finden sich in der folgenden Liste. Die Einträge verlinken genau wie viele der Verweise im vorangegangenen Text auf den jeweiligen Commit im Webfrontend des Hauptentwicklungszweigs von Linux. Dort liefern normalerweise der Commit-Kommentar und der Patch selbst zahlreiche weitere Informationen zur jeweiligen Änderungen.

Firewire und USB

Firewire:

USB:

Input Devices

Notebook-Drivers

Edac, HW-Monitoring, I2C and Watchdog

Edac:

HW-Monitoring:

I2C:

Watchdog:

Staging Area

Various Drivers

Security and Crypto

ACPI, PCI and PM

ACPI:

PCI:

Powermanagement:

Various others infrastructure changes

Weitere Hintergründe und Informationen rund um Entwicklungen im Linux-Kernel und dessen Umfeld finden sich in vorangegangen Ausgaben des Kernel-Logs auf heise open. (thl/c't)

Die vorangegangen vier Teile der Kernel-Log-Serie "Was 2.6.31 bringt" haben bereits einen detaillierten Überblick über die Änderungen in vielen Bereichen des Linux-Kernels gegeben. Alle größeren Neuerungen haben wir dort bereits erwähnt, da die wie üblich in der ersten Phase des Entwicklungszyklus in den Hauptentwicklungszweig einzogen. Einige kleinere, zumeist nicht ganz so wichtige Änderungen der Kategorie "Die kleineren Perlen" schlichen sich aber noch später ein – teilweise, nachdem wir über die entsprechenden Bereiche berichtet hatten. Der Vollständigkeit halber finden Sie diese in der folgenden Liste:

Audio

Graphics

File Systems

Network

LAN:

WLAN:

V4L/DVB

* V4L/DVB (12340): mtv9v011: Add a missing chip version to the driver

Kommentare

Anzeige