Linux 6.7 bringt bcachefs

Seite 2: Itanium erstmal raus

Inhaltsverzeichnis

Vor rund drei Jahren ging es der Intel-Architektur IA64 schon einmal fast an den Kragen. Damals spielte Linus Torvalds bereits mit dem Gedanken, den Support für die IA64-Prozessoren aus dem Kernel zu streichen. Schließlich verursacht der Code immer häufiger Probleme und hat offiziell keinen Maintainer mehr, der sich darum kümmern könnte. Statt des radikalen Rauswurfs ließ Torvalds nochmals "Gnade vor Recht ergehen" und markierte IA64 in Linux 5.11 lediglich als "orphaned", also verwaist. Seither erinnerte bei jedem Build für IA64 eine Warnmeldung daran, dass für IA64 der letzte Akt begonnen hat und der endgültige Abgang näher rückt.

Mit Linux 6.7 ist Itanium (vorerst) Geschichte im Linux-Kernel. Der neue Kernel lässt sich nicht mehr für IA64 bauen. Das stößt bei einigen Kernel-Entwicklern auf Kritik. Keiner wolle sich um den Itanium-Code kümmern, stellt Torvalds dazu nüchtern fest. Er zieht den Vergleich zum alten 80386 (i386). Dessen Unterstützung erschwerte Umbauten im Kernel und wurde schließlich 2012 aus dem Kernel entfernt. Wer diese alten Systeme noch verwendet, könne auf alte Kernel-Versionen zurückgreifen. Technisch relevant sind diese Urahnen heutiger Systeme nicht mehr. Bei IA64 sehe es nicht anders aus, und zudem habe sich die Situation im Itanium-Lager in den vergangenen Jahren nicht verbessert, so Torvalds weiter.

Einen klitzekleinen Schimmer der Hoffnung ließ Torvalds aber auch diesmal offen. Er gibt den IA64-Befürwortern ein Jahr lang Zeit. In dieser Zeit sollen sie den Itanium-Code außerhalb der offiziellen Kernel-Quellen warten und integrieren; also in Form eines externen Patch-Sets. Sollte dies zeigen, dass keine Auswirkungen auf den Rest des Kernels mehr vorliegen, könnte IA64 doch wieder aufgenommen werden. Torvalds zieht hier den Vergleich zum m68k-Port des Kernels. Die Motorola MC68x00-Prozessoren waren ursprünglich unter anderem im klassischen Macintosh, NeXT, Atari ST/STE/TT/Falcon und Amiga verbaut. Obwohl diese Plattformen technisch "tot" und "irrelevant" seien, unterstützt sie der Linux-Kernel noch immer. Grund sei schlicht: Es kümmere sich jemand darum und es verursache keine Schmerzen. Kommt IA64 ebenfalls an diesen Punkt, könnte Itanium im Kernel "wiederauferstehen".

Der Support für Intels Meteor Lake ist jetzt stabil. An den Treibern für die kommenden Generationen Lunar Lake und Arrow Lake wurde weiter gefeilt. Der Nouveau-Treiber erfährt erste Unterstützung für die von Nvidia bereitgestellte GSP-Firmware für den "GPU System Processor" (GSP). Die GSP-Firmware übernimmt das Initialisieren der GPU und das Power-Management. Fortan sollte es einfacher sein, neue GPU-Generationen in Linux zu integrieren. Bislang war das Nutzen der GSP-Firmware auf die proprietären Treiber von Nvidia beschränkt.

Lange Zeit verwaltete die videobuf-Schicht die Framebuffer im Media-Subsystem. videobuf war allerdings in die Jahre gekommen. Die betroffenen Treiber sollten schon seit einigen Jahren in der neuen Schicht videobuf2 beheimatet sein. Konsequenterweise fällt das alte videobuf nun dem Rotstift zum Opfer. Es ist im neuen Kernel nicht mehr enthalten.

Zum zehnjährigen Jubiläum erhält der "Fair Queuing Packet Scheduler" einige Performance-Verbesserungen. Der eher teure Scheduler-Algorithmus soll bei TCP (genauer tcp_rr-Workloads) seinen Durchsatz um fünf Prozent steigern. Bei UDP-Paketen soll die Steigerung sogar bei 13 Prozent liegen.

Die TCP-Authentication-Option (TCP-AO) gemäß RFC 5925 ist in Linux 6.7 integriert. Sie ist ein moderner Ersatz für die alten, in die Jahre gekommenen MD5-basierten Authentisierungsmechanismen.

Auch BPF (Berkeley Packet Filter) legt kontinuierlich zu. So unterstützt BPF jetzt unter anderem Exceptions, CPU-lokale Kernel-Zeiger und das Vererben von Systemeinstellungen für CPU-Security-Mitigations. Zudem führt Linux 6.7 neue virtuelle Netzwerkgeräte ein, deren Transmit-Logik vollständig in BPF programmiert werden kann. Außerdem können nun auch die IBM-Großrechner der Architektur S390x und 32-Bit-ARM-Systeme den aktuellen Satz von BPF-Instruktionen (cpuv4) voll nutzen.

Für die Rust-Integration ist erneut ein Versionswechsel notwendig. Ab jetzt ist Rust 1.73.0 der Compiler der Wahl. Zudem wird erster, für Nutzer sichtbarer Rust-Code in einer der folgenden Kernel-Versionen erwartet. Solcher Code, der offiziell im Kernel zum Einsatz kommt, wäre das nach außen sichtbare Signal für den Erfolg des Rust-Experiments.

Linux 6.7 beschäftigt sich mit Tuning, Nachziehen von Features wie dem wahlweisen Ausschalten der 32-Bit-Emulation auf x86_64 und dem Abbau von Altlasten. bcachefs ist ein lange erwarteter Neuankömmling, der jetzt als experimentelles Feature zum Testen einlädt. Alles in allem ist Linux 6.7 keine große Revolution, sondern ein weiteres Wartungsrelease.

Der Kernel steht auf kernel.org zum Download bereit. Alle Änderungen finden sich detailliert im Kernel-Changelog.

Der neue Kernel folgt auf Linux 6.6, das zum November vergangenen Jahres erschien. Der Kernel brachte unter anderem einen neuen Scheduler, den "Earliest Eligible Virtual Deadline First"-Scheduler (EEVDF).

(dmk)