Aus Linux-Magazin 08/2016

Kernel 4.7: Polaris, VFS, Skylake-HDMI

© preve beatrice, 123RF

Quantitativ verbucht einmal mehr AMD mit seinem Polaris-Support einen Großteil der Neuerungen von Kernel 4.7 für sich. Qualitativ fließen aber noch weitere interessante Features ein.

Ende Mai veröffentlichte Linus Torvalds Linux 4.7-rc1, die erste Vorabversion des nächsten Kernels. Die Entwicklungsphase beschreibt der Finne als ruhig [1], die im Merge-Window eingegangene Codemenge als durchschnittlich.

Nach wie vor dominieren GPU- und Netzwerktreiber die Codebeiträge. Der kommende Linux-Kernel bietet zum Beispiel eine initiale Unterstützung für AMDs angekündigte Polaris-Grafikchip-Generation, bringt aber auch vier neue ARM-Treiber mit. Gamer dürfen einen neuen Controller in Betrieb nehmen.

Dateisysteme

Im Vergleich dazu fallen die laut Torvalds “ziemlich tiefgreifenden Änderungen” am VFS-Layer hinsichtlich der Codemenge eher gering aus. Es seien dennoch die größten konzeptionellen Änderungen seit Langem, bemerkte der Kernel-Vater. Sie erlauben es Dateisystemen, parallel in demselben Verzeichnis »readdir()« -Funktionen aufzurufen und lediglich nach Teilen eines bestimmten Dateipfades zu suchen.

Des Weiteren bringt der erste Release Candidate von Linux 4.7 kleine Verbesserungen am Copy-on-Write-Dateisystem Btr-FS sowie an Samsungs Flash-Friendly-Filesystem (F2FS) mit. Fürs Erstere kündigte Oberhäuptling Chris Mason hauptsächlich Code- und Fehlerbereinigung an. Beim Bau stapelbarer Dateisysteme mittels Overlay-FS lassen sich die beiden neuen Modi »RENAME_WHITEOUT« und »RENAME_EXCHANGE« des »rename()« -Syscall nutzen. So kann Btr-FS als oberer Layer von Overlay-FS agieren.

Neben einem kompatibilitätsbedingten zweiten Kryptopräfix »fscrypt:« (der erste heißt »f2fs:« ) gibt es für das Flash-Dateisystem einige Fehlerbereinigungen sowie zusätzliche Verbesserungen, die zu einem Leistungsschub in bestimmten Szenarien führen.

Wie Dachziegel

Im Storage-Bereich beherrschen Festplatten, die Shingled Magnetic Recording (SMR, [2]) unterstützen, dank Kernel 4.7 nun auch die Zoned-device ATA Commands (ZAC). Das Zonenmodell erzielt höhere Speicherdichten, was die gesamte Speicherkapazität steigert, weil sich Spuren wie Dachziegel überlappen.

Während sich der Support für neuere Thunderbolt-Geräte und -Controller auf Glasfaserbasis in Linux kontinuierlich verbessert, unterstützt der Kernel den Kupfer-basierten Light Ridge Controller der ersten Generation aus dem Jahr 2010 bislang nicht. Das ändert sich nun, weil ein Patch mit nur wenigen Zeilen einige der lange bestehenden Probleme löst. Der Controller ist in Geräten der Baureihen I-Mac, Mac Mini und Macbook Pro der Jahre 2011 und 2012 verbaut.

Das Audio-Subsystem im Kernel kommt jetzt mit Skylake-HDMI zurecht und unterstützt von den Firewire-Geräten die M-Audio-Profire-Serie. Der USB-Audio-Support funktioniert künftig auch für USB-3-Superspeed-Plus-Geräte. Zudem unterstützt Linux 4.7 die Realtek-Codecs ALC234, ALC274 und ALC294.

Netzwerk und Scheduler

Für das Netzwerk-Subsystem hat David Miller einige kleinere Patches eingereicht. Der »w5100« -Treiber unterstützt SPI-basierte Geräte und versteht sich mit dem Wiznet W5100 Ethernet Controller, der auch im Arduino Ethernet Shield steckt. Er arbeitet zudem mit den Wiznet-Fabrikaten W5200 und W5500.

In einem Pull Request des Entwicklers Ingo Molnar stecken einige Patches für die Scheduler und für CPU-Freq. Programmierer Thomas Gleixner hat unter anderem CPU-Hotplug massiv überarbeitet. Der schon für Kernel 4.6 eingereichte Scaling-Governor Schedutil [3] erhält in Kernel 4.7 einen neuen Aufguss.

Polaris

Für Heimnutzer und Spieler interessant dürfte der Support für Grafikkarten in Polaris-Architektur von AMD sein, die noch gar nicht auf dem Markt sind. Der Pull Request, den Maintainer David Airlie für das DRM-Subsystem von Linux 4.7 einreichte, umfasst mehr als 100000 neue Zeilen, während er zugleich rund 20000 entfernt. Etwa 60000 dieser Zeilen sorgen für einen ersten Support der neuen AMD-Architektur, die sich demnächst in Form der Radeon-RX-400-Serie mit Polaris-GPUs auf dem Markt materialisieren soll.

Allerdings fehlt noch immer der Code für die Display Abstraction Layer (DAL, [4]), den AMD von seinem Catalyst-Treiber für AMDGPU übertragen hat. Der mit 93000 Zeilen recht umfangreiche Displaytreiber nimmt fast so viel Raum ein wie der gesamte Intel-Treiber und steht daher weiterhin in der Kritik der anderen DRM-Entwickler. AMDs Programmierer bauen ihn weiter um, er soll nun in Linux 4.8 landen.

Erst wenn der neue Code im Kernel steckt, bilden AMDGPU und somit auch Polaris die Eigenschaften des Catalyst-Treibers ungefähr ab, indem sie Funktionen wie Freesync und HDMI 2.0 bieten. Powermanagement, Graphics Compute, System-DMA, Unified Video Decoder (UVD) und Video Coding Engine (VCE) sind für Polaris aber schon auf gutem Weg.

Intel, Nouveau und Videocore

Auch drüben bei Intel sitzen sie nicht untätig herum. Intel-Entwickler Daniel Vetter beschreibt in einem Blogpost [5] die Änderungen am Intel-DRM-Treiber für Kernel 4.7. Der soll besser mit atomaren Aktionen klarkommen, was auch die Farbverwaltung betreffe. Diese könne nun definierte Farbräume auf Displays noch akkurater darstellen. Anwender dürften am ehesten die Fehlerbereinigungen bei den Skylake-Grafik-Ausbaustufen GT3 und GT4 mit den GPUs HD Graphics 535, 540 und 550 bemerken. Die Karten sollen dank des überarbeiteten Treibers seltener hängenbleiben und das Bild soll zugleich weniger ruckeln. Darüber hinaus erhielt Intels Power Management Controller (PCM) in letzter Minute einen eigenen Treiber.

Für Nouveau, den freien Nvidia-Treiber, tauchten erst vor Kurzem erste Commits in DRM-Next auf. Diese bieten eine erste Unterstützung für die Maxwell-GPU GM108, der ersten Generation mit Maxwell-Architektur. Zudem liefert eine Reihe von Patches Support für das experimentelle Reclocking von Kepler-Karten, damit sie den Boost-Modus nutzen. Da Nvidia noch keine signierten Microcode-Images freigegeben hat, wird auch Linux 4.7 die Pascal-Architektur von Nvidia nicht supporten.

Der DRM-Treiber VC4 [6] für Broadcoms Videocore-Architektur, prominent beim Raspberry Pi im Einsatz, kommt ab Linux 4.7 mit dem DPI-Panel zurecht.

ARM und verspielt

Rund 20000 Zeilen Code stecken in den vier neuen ARM-Treibern Hisilicon Kirin, Mediatek MT8173, Arc PGU und Allwinner A13. Der Allwinner-Treiber »sun4i« unterstützt lediglich ältere SoCs des Allwinner A13, soll aber künftig auch neuere SoCs supporten, etwa die A10, A13, A20, A23, A31 sowie A33. Derzeit beherrscht »sun4i« zudem nur RGB und Composite – VGA, HDMI und LVDS sollen folgen. Der von Mediatek eingereichte DRM-Treiber unterstützt den Cortex-A72/53-SoC, der in einer Reihe von Android-Geräten arbeitet.

Abbildung 1: Der Code für Microsofts Xbox One Controller wurde erst für den Steam-OS-Kernel geschrieben.

Abbildung 1: Der Code für Microsofts Xbox One Controller wurde erst für den Steam-OS-Kernel geschrieben.

Auch für die überschaubare Gemeinde der Linux-Spieler gibt es News. Der Xpad-Treiber des Kernels unterstützt in Version 4 weitere Controller, enthält aber auch ein Patch für Microsofts Xbox One Elite Controller (Abbildung 1). Der zugehörige Code war ursprünglich für den Steam-OS-Kernel von Valve entstanden und landete nun im Mainline-Kernel. Linux 4.7 erscheint aller Voraussicht nach Anfang August 2016.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 2 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben