Egal ob Power 4 oder verschiedene obskure SoCs – einige Kernelentwickler nutzen den Entwicklungszyklus für Kernel 4.17 zum Frühjahrsputz. Natürlich landen auch mehrere neue Treiber in Linux, die zum Beispiel USB-C, Intels Cannon-Lake-Architektur, AMDs Vega 12 oder vorhandene Dateisysteme verbessern.
Bei Redaktionsschluss zeichneten sich bereits das Ende des aktuellen Merge Window und der erste Release Candidate für den neuen Kernel 4.17 ab. Zugleich ließen die von Linus Torvalds akzeptierten Codebeiträge auf die geplanten neuen Features schließen.
So geht beispielsweise die Arbeit an der neuen Architektur Risc-V weiter. Palmer Dabbelt kündigte dynamisches Ftrace für Risc-V-Targets an. Entwickler haben die Atomic- und Locking-Routinen überarbeitet, damit sie besser zum Speichermodell-Entwurf passen. Trotz Limitierungen lädt Risc-V neuerdings zudem standardmäßig Module.
Für den USB-Bereich berichtete Greg Kroah-Hartman über die Fortschritte am USB-C-Support. Einiger Code sei vom Staging- in den passenden Bereich des Kernels gewandert. Neue Infrastruktur soll die verschiedenen Arten von Rollen abdecken, die Type C erfordere. Wie immer gebe es auch eine Reihe von USB-Gadget-Controller- und Treiber-Updates.
Dateisysteme
Auch bei den Dateisystemen gibt es neue Entwicklungen, etwa bei Samsungs Flash-Filesystem F2FS. Entwickler Sheng Yong brachte Code ein, der ein Lost-and-Found-Feature ergänzt. Das erlaubt es, nach Abstürzen vermisste Dateien zu behalten, anstatt sie zu löschen, und hilft so bei Wiederherstellungen. Den Usern wolle man zudem Möglichkeiten an die Hand geben, die Performance zu verbessern. Außerdem arbeite man an einer »fsverity«-Implementierung, dem von Ted Ts’o eingeführten Integritätsschutz auf Dateisystemebene.
Apropos Ted Ts’o: Der schickt Patches, um Ext 4 robuster gegen – in böser Absicht – falsch angelegte Dateisysteme zu machen. In seinem Pull Request konnte er sich dennoch einen Kommentar an die Container-Anhänger nicht verkneifen. Diese sollten sich nicht der Illusion hingeben, dass das Mounten willkürlicher Abbilder sicher sei. Neben den Ext-4-Updates fand Ts’o noch Zeit für Aufräumarbeiten am »/dev/random«-Treiber.
David Sterba zählt für Btr-FS mehrere für Benutzer sichtbare Änderungen auf. Die neue Mountoption »nossd_spread« deaktiviert den SSD-Optimierungsschalter »ssd_spread«. Letzterer sorgt dafür, dass sich unter den lokalisierten freien Blöcken keine allozierten befinden. Die Mountoption »subvolid« erkennt, wenn nach einer Subvolume-ID Müll folgt, und unterbricht den Mountprozess. Daneben gab es auch hier Aufräumarbeiten und diverse Reparaturen.
Entwickler Darrick Wong hat für das Dateisystem XFS eine Runde neuer Updates geschickt. Das größte sei die Implementierung von »lazytime« als Mount-Option. Beim Lesen einer Datei ändert sich jedes Mal die »atime« (Access Time), was einen Schreibvorgang auf der Festplatte auslöst. Dank Lazytime behält XFS diese Inode-Änderungen im Arbeitsspeicher und holt sie nur dann, wenn es sie benötigt. Verbesserungen gibt es für die Checks von auf der Festplatte gespeicherten Inode-Metadaten.
ACPI-, GPIO- und DVB-Treiber
Auch im ACPICA-Code ändert sich etwas, denn die Entwickler ersetzen die ACPICA-Lizenz-Vorlagen mit SPDX-Lizenz-IDs [1]. Mit dem vor ein paar Jahren spezifizierten Format will die Linux Foundation Lizenzen verwalten.
Der ACPI-Batterietreiber behandelt Batterie-Schwellenwerte auf Thinkpads (Abbildung 1) intelligenter, zudem gibt es einen neuen – wenn auch rudimentären – Treiber für das generische ACPI Time and Alarm Device (TAD). In Sachen Energieverwaltung passen die Entwickler zudem den »cpuidle poll state«-Code an, damit CPUs nicht in Loops festhängen und sinnlos Energie verschwenden.

Abbildung 1: In Thinkpads kommt der ACPI-Batterietreiber im Kernel 4.17 besser mit Schwellenwerten von Batterien zurecht.
Im Media-Bereich tat sich etwas bei den DVB-Chipsätzen. So ging das DVB-Frontend »cxd2099« von Staging in den Mainline-Kernel über, und es gibt einen neuen Treiber für Sonys CXD2880, einen DVB-T/T2-Tuner- und Demodulator. Auch die GPIO-Updates von Linus Walleij enthalten Neuerungen. Dazu zählen Treiber für den General Purpose Input Output (GPIO) von Hollywood, der GPU-Architektur für die Nintendo Wii. Für den GPIO-Expander des Raspberry-Pi-Mailbox-Dienstes gibt es ebenfalls einen neuen Treiber.
ARM-SoCs von Nvidia und Allwinner
Auch von Nvidia kommt Kernelcode. Der unterstützt den Tegra 194 SoC (Xavier), das Entwicklerboard p2972 sowie das p2888-Modul. Der Tegra-SoC bringt eine ARM-v8-64-Bit-CPU mit acht Kernen mit, eine Volta-GPU mit 512-Cuda-Kernen und eine quelloffene Tensor Processing Unit, die Nvidia DLA (Deep Learning Accelerator) nennt [2].
Sein Debüt gibt der Allwinner H6 Soc auf dem Pine-H64-Entwicklerboard. Auch den H5-basierten Orange Pi Zero+ und den A64-basierten Teres-I-Laptop von Olimex unterstützt der Kernel nun dank der ARM-Entwickler. Im 32-Bit-Bereich bringt der Kernel 4.17 aller Voraussicht nach Support für den Olimex som204 mit, dessen Design auf dem Allwinner A20 basiert, sowie für das Development Board Banana Pi M2 Zero.
Weggeputzt
Der Frühjahrsputz betraf auch die Power-Architektur, auf die unter anderem IBM setzt. Die Entwickler haben den Support für Power 4 eingestellt. Vermutlich bestärkte sie der Umstand, dass der Support für Power 4 im Jahr 2016 zeitweilig kaputt war, ohne dass sich jemand beschwerte. Mit dem Support-Ende fällt auch eine Barriere weg, um einige spezielle neue Instruktionen zu verwenden.
Die 64-Bit-Power-Systeme unterstützen einen User Address Space von 4 Petabyte. Workarounds sorgen dafür, dass der Hypervisor transaktionalen Speicher auf Power 9 aktiviert und so die Performance verbessert. Zugleich deaktivieren die Entwickler für Power 9 das Data Address Watchpoint Register (DAWR).
Entwickler Arnd Bergmann räumt kräftig auf. Er kündigte an, den Code für die Architekturen Blackfin, Cris, Frv, M32r, Metag, Mmn10300, Score und Tile und die zugehörigen Gerätetreiber nach Absprache mit den Maintainern aus dem Kernel zu werfen. Alle acht Architekturen teilen ein Schicksal: Ein Unternehmen war für die SoC-Linie, die CPU-Mikroarchitektur und das Software-Ökosystem zuständig. Offenbar war es für Kunden aber günstiger, CPU-Kerne von der Stange zu verwenden (ARM, Mips oder Risc V). Die Produkte gebe es zwar noch, aber die CPU-Architekturen wurden seit Jahren nicht verwendet.
Vega-12- und Cannonlake-Support
Zu den ersten Merges für den neuen Kernel 4.17 zählten diesmal die DRM-Updates von Dave Airlie. Dieser nannte den Code für Cannonlake, Intels 10-Nanometer-Technologie auf Basis der Kaby-Lake-Architektur und den Support für AMDs Vega-Grafikkartenserie die wichtigsten Dinge im aktuellen Patchset. Der AMDGPU-Treiber unterstützt Vega 12 und aktiviert Display Core auf allen unterstützten GPUs.
Der Intel-Treiber i915 kommt derweilen nicht nur mit Cannonlake-Support im Gepäck, sondern unterstützt zudem das Verschlüsselungssystem HDCP. Die High-bandwidth Digital Content Protection ermöglicht es, hochaufgelöste Daten, zum Beispiel HD-Videos, verschlüsselt über HDMI oder Displayport zu transportieren. Wer nun aber an Digital Rights Management denkt: Wayland-Entwickler Daniel Stone hatte bereits im Dezember erklärt, warum niemand Angst vor HDCP haben müsse [3].
Verläuft der Zyklus ähnlich wie die vorhergehenden, sollte der fertige Kernel 4.17 Ende Mai oder Anfang Juni auf https://kernel.org erscheinen.
Infos
-
SPDX-Hintergründe: https://www.linux-magazin.de/news/linuxcon-europe-softwarelizenzen-mit-spdx-verwalten/
-
Nvidia Tegra Xavier: https://en.wikipedia.org/wiki/Tegra#Xavier
-
Keine Angst vor HDCP: https://www.collabora.com/news-and-blog/blog/2017/12/11/why-linux-hdcp-isnt-the-end-of-the-world/






