Aus Linux-Magazin 01/2025

Neues in Linux 6.11

© fucsiya / 123RF.com

Der Kernel 6.11 beschenkt Besitzer aktueller AMD-Hardware bereits vor Weihnachten reichlich mit Treiber-Updates. Der geplante neue Extensible Scheduler dagegen verzögert sich.

Mitte September hat Linus Torvalds vom Open Source Summit in Wien aus Linux 6.11 als aktuellen Kernel freigegeben. Den größten Anteil an einem neuen Kernel besitzen gemessen an hinzugekommenen Zeilen üblicherweise Treiber für CPUs und GPUs. Das ist beim Kernel 6.11 nicht anders. Dieses Mal profitieren davon insbesondere AMD-Systeme.

Das Augenmerk liegt dabei auf aktuellen Ryzen-CPUs und den kommenden Radeon-Grafikkarten, bei denen der Kernel einige Fehler bei der RDNA-3.5-Grafik der Notebooks mit AMD Ryzen AI 300 “Strix Point” ausräumt (Abbildung 1). Zudem führt der neue Kernel grundlegende Unterstützung für die kommende Grafikarchitektur RDNA 4 (GFX12XX) ein [1].

Abbildung 1: Die Grafik des AMD Ryzen AI 300 profitiert von aufgefrischten Treibern. Quelle: AMD

Abbildung 1: Die Grafik des AMD Ryzen AI 300 profitiert von aufgefrischten Treibern. Quelle: AMD

Bei modernen Ryzen-CPUs hat der P-State-Treiber, der für die Leistungsskalierung der CPU zuständig ist, einiges an Schliff erfahren. So erlaubt ihm die neue Funktion AMD Core Performance Boost (CPB) höhere Taktfrequenzen, solange sich Kernparameter wie Temperatur oder Energiebedarf in vertretbaren Grenzen bewegen [2]. Ebenfalls neu im P-State-Treiber ist AMD Fast CPPC, das zur Verbesserung der Energieeffizienz in CPUs auf der Basis von Zen 4 beiträgt. Die Abkürzung CPPC steht für die Collaborative Processor Performance Control, die bei gleichem Stromverbrauch Leistungssteigerungen von bis zu 6 Prozent erzielt [3].

Ein Patchset für AMD SEV-SNP sorgt für mehr Sicherheit bei virtuellen Maschinen, die auf AMD-Hosts mit Epyc-7003-CPUs unter KVM laufen. Die Secure Encrypted Virtualization (SEV) mit Secure Nested Paging (SNP) steigert den Schutz der Speicherintegrität. Darüber hinaus führt SEV-SNP mehrere zusätzliche Verbesserungen ein, um effektiver vor Seitenkanalattacken zu schützen.

Intel

Auch bei Hardware von Intel gibt es Fortschritte zu verzeichnen. Die GPU-Architektur Intel Xe2 für die auf der Computex vorgestellte CPU-Familie “Lunar Lake” und die nächste Generation der Arc-Grafikkarten namens “Battlemage” erhielten einige Patchsets. Für Letztere zählen dazu unter anderem GPU Display Support, Panel Replay Support zur Förderung der Fähigkeit zur Selbstauffrischung des Panels sowie die Funktion Hardware Replay zur besseren Reproduktion von GPU-Hängern [4].

Intel-Prozessoren erhalten mit Kernel 6.11 die Möglichkeit, im Userspace per Debugfs anzuzeigen, warum eine CPU auf einem reduzierten Leistungsniveau läuft. Gründe dafür können sowohl im Bereich thermischer als auch energetischer Beschränkungen liegen.

Intel- und AMD-CPUs profitieren gleichermaßen von Verbesserungen bei AES-GCM. AES steht für Advanced Encryption Standard und bezeichnet eine verbreitete Blockchiffre zur Verschlüsselung sensitiver Daten unter anderem bei WLAN-Verbindungen. Die Patches des Google-Mitarbeiters Eric Biggers erlauben laut Michael Larabel von Phoronix [5] bei modernen CPUs eine bis zu 162 Prozent schnellere AES-GCM-Ver- und Entschlüsselung.

Für die Meldung von Perf-Events [6] auf der Performance Monitoring Unit (PMU) von CPUs der kommenden Intel-Architekturen “Lunar Lake” und “Arrow Lake” schrieb Ingo Molnar ein Patchset für das Performance-Counter-Subsystem [7]. Noch weiter in die Zukunft reichen Patches im Audio-Subsystem für Intels CPU-Serie “Panther Lake”, deren Debüt frühestens Mitte 2025 erfolgt.

Intel-Server mit Linux 6.11 dürfen jetzt Sub-NUMA-Clustering (SNC) nutzen, um die Leistung bei NUMA-Workloads zu steigern, selbst wenn Intels Resource Director Technology (RDT) zur Kontrolle von Speicherereignissen aktiviert ist. Die beiden Technologien standen bisher im Widerspruch zueinander. Non-Uniform Memory Access (NUMA) zur Konfiguration eines Clusters von Mikroprozessoren in einem Multiprozessorsystem und RDT schlossen sich bisher gegenseitig aus [8]. Intel-NPUs erhielten Verbesserungen ab den “Meteor-Lake”-Chips im Treiber für den IVPU Accelerator (Intel Versatile Processing Unit). Er bekam Unterstützung für den Hardware-Scheduler und für das Profiling.

Apropos Scheduler: Eigentlich sollte der bisher out-of-tree entwickelte Extensible Scheduler »sched_ext« mit Linux 6.11 Aufnahme in den Kernel finden. Er weckt hohe Erwartungen, da er die Implementierung von Scheduling-Policies als eBPF-Programme (Berkeley Packet Filter) ermöglicht. Allerdings verschob Linus Torvalds wegen diverser Probleme [9] die Aufnahme des 14 000 Zeilen umfassenden Extensible-Scheduler-Patchsets auf den Kernel 6.12, wo er es mittlerweile eingefügt hat [10].

Storage

Das Ext4-Dateisystem ist ausgereift und erfährt selten größere Änderungen. Kernel 6.11 erreicht jedoch für bestimmte Szenarien einen Geschwindigkeitszuwachs von rund 20 Prozent. Das gilt insbesondere für Input-Output-Operationen und den Durchsatz auf schnellen Geräten mit Async Direct I/O. Die Optimierung der Funktion »jbd2_transaction_committed()« macht es möglich [11]. Die Echtzeit-Geräteunterstützung von XFS [12] erhielt als Erweiterung von »TRIM«/»DISCARD« Unterstützung für »FITRIM«. Damit lässt sich ungenutzter Speicherplatz auf Echtzeitgeräten freigeben [13].

Meinungsverschiedenheiten zwischen Linus Torvalds und Bcachefs-Entwickler Kent Overstreet über dessen Commits und den fehlenden Teamgeist zwangen Overstreet, seine Einreichung zu überarbeiten. Im weiteren Verlauf der Auseinandersetzung dachte Torvalds laut darüber nach, Bcachefs wieder aus dem Kernel zu entfernen [14]. Somit fiel Overstreets Beitrag zum aktuellen Kernel kleiner aus als ursprünglich geplant.

Das Block-Subsystem des Linux-Kernels für Storage bringt in Linux 6.11 Unterstützung für Atomic Writes. Das Ziel ist es, eine Schnittstelle bereitzustellen, die es Anwendungen ermöglicht, spezifische Blockgrößen zu verwenden, die größer sind als die vom Speichergerät gemeldete logische Blockgröße oder als die vom Systemaufruf »stat()« gemeldete Dateisystemblockgröße. Atomic Writes verhindern damit, dass Anwendungsblöcke beim Schreiben auseinandergerissen werden.

ARM und RISC-V

Seit dem Frühjahr nutzt Linus Torvalds eine ARM64-Workstation und korrigierte dafür seitdem einige Fehler im Kernel. Das gilt auch für Linux 6.11, das jetzt standardmäßig die Installation komprimierter Kernel-Images erlaubt [15]. ARM64 beherrscht nun außerdem CPU-Hotplugging auf ACPI-Systemen. Damit ist bei ARM64 die Fähigkeit des Kernels gemeint, CPUs per PSCI an- und abzuschalten. Das Power State Coordination Interface (PSCI) ist ein ARM-Standard und dient als Schnittstelle zwischen einem Betriebssystem und seiner Überwachungs-Firmware [16].

Hotplugging spielt auch eine Rolle bei Verbesserungen für die RISC-V-Plattform. Memory Hotplugging erlaubt dort wie schon bei x86_64 und anderen CPU-Architekturen den physischen Austausch von RAM-Modulen zur Laufzeit. Noch sinnvoller als bei Servern ist das bei virtuellen Maschinen, bei denen man damit den zugewiesenen Arbeitsspeicher zur Laufzeit verändern darf [17].

Linux 6.11 bietet obendrein initiale Unterstützung für die beiden Notebooks Asus VivoBook S 15 und Lenovo Slim 7 auf der Basis des ARM-SoCs Qualcomm Snapdragon X1 Elite. Allerdings fehlen noch wichtige Hardwarefunktionen wie die USB-Anschlüsse.

Rust

Die neue Kernel-Ausgabe führt eine minimale Version für die Rust-Toolchain ein. Die ist für den Rust Compiler auf v1.78.0 festgelegt, es darf aber auch v1.79.0 sein. Mit der Zeit soll die Spanne der unterstützten Versionen weiter wachsen. Damit sind Distributionen besser in der Lage, Rust-Kernel-Code zu bauen, ohne ständig auf eine neue Compilerversion umsteigen zu müssen [18]. Die Einführung des Konzepts von Atomic Writes für SCSI- und NVMe-Speicher ermöglicht gleichzeitig die grundlegende Unterstützung für in Rust geschriebene Block-Device-Treiber [19].

Auch wenn Rust im Kernel stetig Fortschritte macht, geht die Entwicklung nicht ohne Zerwürfnisse ab. Wedson Almeida Filho, ein bei Microsoft angestellter Rust-Entwickler, der in den letzten Jahren zahlreiche Beiträge zum Rust-Code für den Linux-Kernel leistete, zieht sich aus der Kernel-Entwicklung zurück. Als Hauptgrund gibt er “non-technical nonsense” in den Diskussionen um Rust im Kernel an. Torvalds hörte jüngst in einer Talkrunde gar “religiöse Untertöne” aus den zunehmenden Spannungen zwischen C- und Rust-Entwicklern heraus. Er verglich die Kontroverse mit dem Fanatismus der Editor Wars zwischen Vi und Emacs [20].

BSOD

Eigentlich sollte der Blue Screen of Death (BSOD) für Linux bereits bei Kernel 6.10 dabei sein, wurde aber nicht rechtzeitig fertig. Der in Rust geschriebene BSOD informiert künftig in den seltenen Fällen einer Kernel Panic und fordert zum Reboot auf. Die jetzt integrierte Lösung funktioniert über DRM/KMS-Treiber. Künftig soll die Anzeige weitere Details erhalten und die Kernel-Fehlermeldung über einen QR-Code abrufbar machen.

Fazit und Ausblick

Linux 6.11 bewegt sich von der Größe her mit etwas über 12 100 Einreichungen im Mittelfeld und dürfte in den Veröffentlichungen von Ubuntu 24.10 und Fedora 41 erste Auftritte haben. Hardwareseitig profitieren Besitzer aktueller CPUs und Grafikkarten von AMD ganz besonders. Alle Neuerungen zu Linux 6.11 lassen sich auf der Kernel-Newbies-Webseite nachlesen [21].

Der kommende Kernel 6.12 könnte in der zweiten Novemberhälfte erscheinen, Greg Kroah-Hartman wird ihn vermutlich zur diesjährigen Long-Term-Support-Version (LTS) erklären. Als zu erwartende Höhepunkte von Linux 6.12 gelten der bereits erwähnte eBPF-basierte Scheduler »sched_ext« und – nach 20 Jahren Arbeit – die endgültige Implementierung von Echtzeit-Linux (RTLinux) im Mainline-Kernel. (uba)

Infos

  1. RDNA 4: https://lore.kernel.org/dri-devel/20240712171637.2581787-1-alexander.deucher@amd.com/
  2. CPB: https://lore.kernel.org/linux-pm/56258f5f-c529-4f91-b0a6-09f233174e1f@amd.com/
  3. Fast CPPC: https://lore.kernel.org/linux-pm/d8de3761-6fa1-477e-8ed8-71abf115eb60@amd.com/
  4. Intel-GPU: https://lore.kernel.org/dri-devel/87y170eu80.fsf@intel.com/T/#u
  5. Phoronix: https://www.phoronix.com/news/AES-GCM-Intel-AMD-Linux-6.11
  6. Perf: https://perf.wiki.kernel.org/index.php/Main_Page
  7. Perf 6.11:https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/commit/?h=perf/core&id=5e645f31139183ac9a282238da18ca6bbc1c6f4a
  8. SNC: https://lore.kernel.org/lkml/20240716065458.GAZpYZQhh0PBItpD1k@fat_crate.local/
  9. »ext_sched«-Probleme: https://lore.kernel.org/lkml/20240725011907.3f5ropfai3xoy3l3@airbuntu/
  10. »ext_sched«-Merge: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=88264981f2082248e892a706b2c5004650faac54
  11. Ext4: https://lore.kernel.org/lkml/20240718032730.GA2319255@mit.edu/
  12. XFS Realtime: https://blogs.oracle.com/linux/post/xfs-realtime-device
  13. XFS: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=bf3aa9de7ba57c2c7b5ea70c1ad3a6670cd6fcb0
  14. Torvalds und Bcachefs: https://linuxnews.de/fliegt-bcachefs-bald-aus-dem-kernel/
  15. ARM: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=4c7be57f2772c8ce4e1e43c6a79b8f8d401a4795
  16. PSCI: https://developer.arm.com/documentation/den0022/latest/
  17. Memory-Hotplug: https://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux.git/commit/?h=for-next&id=60a6707f582ebbdfb6b378f45d7bf929106a1cd5
  18. Rust: https://lore.kernel.org/lkml/20240725013244.69532-1-ojeda@kernel.org/
  19. Atomic Writes: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=3e7819886281e077e82006fe4804b0d6b0f5643b
  20. Editor Wars: https://de.wikipedia.org/wiki/Editor_War
  21. Kernel Newbies: https://kernelnewbies.org/Linux_6.11
DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 3 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
Nach oben