Linux 7.2: Cache-aware Scheduler, schnellere Filesysteme und viele Treiberverbesserungen

6 Min. Lesezeit

Der Linux‑Kernel 7.2 ist erschienen und konzentriert sich auf Performance‑Feinschliff, modernere Hardwareunterstützung und Entrümpelung alten Codes. Zu den auffälligsten Neuerungen gehören ein cache‑awarer Task‑Scheduler, Verbesserungen bei ext4 und Btrfs sowie Unterstützung für neue Peripheriegeräte und Protokolle. Gleichzeitig entfernte der Release mehrere veraltete Komponenten, und ein zuletzt erwarteter, fairerer GPU‑Scheduler wurde kurz vor dem finalen Release zurückgenommen.

Cache‑aware Scheduling: Threads dort halten, wo der Cache geteilt wird

Der Scheduler in Linux 7.2 wurde so erweitert, dass er die Cache‑Topologie berücksichtigt: Threads desselben Prozesses sollen bevorzugt auf Kernen bleiben, die sich einen Cache teilen. Ziel ist, sogenanntes „cache bouncing“ zu reduzieren, also das wiederholte Nachladen oder Synchronisieren gleicher Daten zwischen Caches auf unterschiedlichen Kernen.

Gleichzeitig schützen neue Schwellenwerte das System davor, dass eine Anwendung einen gesamten Cache‑Bereich monopolisiert. Der Scheduler vermeidet das Verlegen weiterer Threads, wenn ein Prozess bereits mehr als 25 % CPU‑Zeit verbraucht oder über 33 % der Last in einem Cache‑Domain ausmacht. Besonders CPUs von AMD und Intel mit mehreren Cache‑Domänen profitieren, der effektive Gewinn hängt allerdings vom Prozessor und der jeweiligen Arbeitslast ab.

Pipes, Speicher‑Reclaim und MGLRU

Ein Locking‑Fix reduziert die Dauer, in der Schreiboperationen eine Pipe blockieren. Messungen in den Änderungen zeigen Leistungsgewinne in bestimmten Szenarien von 6–28 % sowie eine Verringerung der Schreiblatenz um 5–22 %, besonders unter Speicherdruck.

Die Multi‑Generational LRU (MGLRU) für Memory‑Reclaim wurde verschärft: Die Reclaim‑Schleife und das Schreiben „dirtyer“ Seiten wurden angepasst. Laut Commit ergibt sich in einem Beispiel mit MongoDB und YCSB ein bis zu ~30% schnellerer Durchsatz und weniger unerwartete Out‑of‑Memory‑Beendigungen.

Dateisystemoptimierungen: ext4, Btrfs, exFAT und NTFS

Mehrere Filesysteme profitieren in 7.2 von gezielten Optimierungen:

  • ext4: Die Fast‑Commit‑Implementierung wurde überarbeitet, um Lock‑Contention und Deadlocks unter hoher Last zu vermeiden. Zudem sind Statistiken zu Fast‑Commit nun über /proc/fs/ext4/*/fc_info einsehbar. Eine Änderung in der IOMAP‑Schicht, die auch XFS betrifft, bringt rund 5 % mehr Leistung bei kleinen, zufälligen 4‑KiB‑Reads von NVMe‑Drives mit io_uring Polling. Die Directory‑Lookup‑Logik arbeitet jetzt mit 4‑Byte‑Blöcken, was die Suche in sehr dichten Verzeichnissen beschleunigen soll.
  • Btrfs: Große Folios (large folios) sind nun standardmäßig aktiviert, eine Funktion, die seit 6.17 experimentell war. Außerdem wird Direct‑I/O nicht länger strikt seriell ausgeführt, was in Tests Schreibperformancezuwächse bis zu 59 % ergibt. Sequenzielle Schreibvorgänge sollen um etwa 15 % zulegen, weil die maximale Größe einzelner Writeback‑Requests begrenzt wurde.
  • exFAT: Die Implementierung nutzt jetzt das Kernel‑IOMAP‑Layer, was unter starker Last Schreibgeschwindigkeiten um bis zu 87 % steigern kann.
  • NTFS: Unterstützung für echte Windows‑Symbolic‑Links wurde verbessert; ein Bug, der solche Links als Null‑Byte‑Dateien erscheinen ließ, wurde behoben. NTFS wurde außerdem gegen On‑Disk‑Metadatenkorruption gehärtet.

USB4STREAM und /proc‑Optimierungen

Mit Linux 7.2 kommt Unterstützung für USB4STREAM: Daten lassen sich direkt zwischen zwei Rechnern über ein USB4‑ oder Thunderbolt‑Kabel übertragen. Der Kernel erzeugt dazu Geräte unter /dev/tbstreamX; Anwender können Tools wie cat, dd oder echo verwenden, um Daten ohne Netzwerkverbindung über das Kabel zu schicken.

Außerdem wurden zwei /proc‑Dateien beschleunigt: /proc/filesystems wird jetzt vorab aufgebaut statt bei jedem Lesen neu konstruiert, was einzelne Lesezugriffe um bis zu 140 % und gleichzeitige Zugriffe (20 Prozesse) sogar um bis zu 444 % beschleunigt. /proc/interrupts profitierte ebenfalls von interner Optimierung.

Treiber- und Hardwarepflege: Laptops, Audio, Kameras und Gamepads

Der Release enthält zahlreiche Treibererweiterungen für reale Geräte:

  • Uniwill‑Treiber (u. a. bei TUXEDO) unterstützt nun Akku‑Lademodi; Microsoft Surface‑Treiber erweitert um Surface Pro 12‑Unterstützung.
  • Lenovo‑Legion‑Modelle erhalten Steuerung für Ladebegrenzungen über den wmi‑Treiber.
  • HP ZBook Ultra gewinnt Support für AMD ISP4‑Webcams; mehrere Wacom‑W9000‑Touchscreens werden künftig erkannt.
  • Audio‑Fixes: Interne Mikrofonarrays des HyperX OMEN Gaming Laptop 16‑ap1xxx arbeiten nun, und Klangprobleme bei Lenovo Yoga 7 (16IAP7) sowie Legion 7i (16IAX7) wurden behoben.
  • Das klassische Microsoft Surface RT (Modell 1516) liefert jetzt Akkuinformationen unter Linux; Asahi‑Linux‑Arbeit ermöglicht das Booten von Apple M3‑Macs zumindest in eine Konsole.
  • Peripherie: Rakk Dasig X‑Mausseiten werden erkannt, PlayStation DualSense Edge‑Rear‑Buttons sind unterstützt, OneXPlayer‑Konfiguration wurde mainlined, und ein HORI Wireless Switch Pad läuft ohne Zusatztreiber.

Netzwerkchips, WLAN und Sensordaten

Im Netzwerkbereich wurden weitere Adapter unterstützt: Realtek RTL8159 (10‑Gbps USB‑Netzwerk‑ASIC), neue USB‑WLAN‑Adapter sowie spezifische Realtek‑Chipsätze 8922AU/8922AE inklusive Bluetooth‑Support. Für WiFi‑7 gibt es Treiberunterstützung für Mercusys MA60XNB und NETGEAR NightHawk A8500; Mediatek MT7927 (Filogic 380) ermöglicht WiFi‑7‑Raten auf 6 GHz und Bluetooth 5.4. Zudem wurden mehr Temperatur‑ und Lüftermesspunkte auf ASUS‑ und ASRock‑Boards (u. a. ASRock Z890 Pro‑A) hinzugefügt, sowie ein neuer Treiber für ARCTIC‑Fan‑Controller.

Kürzere Liste weiterer Änderungen

  • khugepaged kann Memory in mehreren Huge‑Page‑Größen zusammenfassen.
  • Landlock kann nun UDP bind/connect/send einschränken.
  • Neues openat2()‑Flag erlaubt das Verweigern des Öffnens von Device‑Files.
  • NFS und ksmbd können case‑insensitive Filesystems melden.
  • AF_ALG wurde als veraltet markiert; strncpy() aus dem Kernel entfernt.
  • Erste Unterstützung für AMDGPU HDMI 2.1 FRL und Fehlerbehebung bei PCIe‑2.5 GT/s‑Linkgeschwindigkeit.
  • TDX‑Verbesserung: Runtime‑Module‑Update ohne Reboot möglich.
  • Vorbereitung für Sub‑Scheduler in sched_ext, Arbeit an WiFi‑8, Phase IV der Swap‑Tabellenverbesserung und bessere Write‑Performance mit RWF_DONTCACHE.

Entrümpelung und Reverts

Im Zuge des Aufräumens wurden über 13.000 Zeilen Code für die alte i486‑CPU‑Emulation gelöscht. Ebenfalls entfernt wurden ein rund 40 Jahre alter Hercules‑Grafikkartentreiber, das AppleTalk‑Protokoll sowie ISA‑ und PCMCIA‑ARCnet‑Treiber. Diese Bestandteile dürften im Alltag kaum fehlen, sind aber nicht mehr Teil des Kernels.

Ursprünglich war ein fairerer GPU‑Scheduler geplant, der die GPU‑Nutzung gerechter regeln sollte. Kurz vor Release wurde dieser Ansatz aber wieder auf FIFO zurückgesetzt, weil einige AMD‑Grafikkarten Performance‑Regressionen zeigten.

Projektumfang, Mitwirkende und Ubuntu‑Ausblick

Die Entwicklung von 7.2 lief neun Wochen; mehr als 2.100 Mitwirkende waren beteiligt. Commit‑Analysen zeigen, dass etwa 5 % der Änderungen einen „assisted‑by“‑Vermerk tragen, was auf KI‑Assistenz bei einigen Commits hinweist.

Canonical nannte Linux 7.2 als Zielkernel für Ubuntu 26.10, allerdings ist unter Ubuntus neuer Policy diejenige Kernel‑Version, die am Freeze‑Datum die neueste upstream‑Version ist, maßgeblich. Da das Merge‑Fenster für 7.3 bereits geöffnet ist, könnte Ubuntu 26.10 letztlich doch eine andere Version verwenden. Der Kernel‑Quellcode steht wie gewohnt auf kernel.org bereit; für Anwender gilt: Mainline‑Kernel aus nicht‑Ubuntu‑Quellen bergen Risiken und sollten mit Vorsicht eingesetzt werden.

Fazit

Linux 7.2 ist ein Wartungs‑ und Leistungsrelease mit vielen gezielten Optimierungen: mehr Cache‑Bewusstsein im Scheduler, spürbare Verbesserungen für ext4 und Btrfs, attraktive I/O‑Fortschritte für exFAT sowie breitere Hardware‑Unterstützung. Wer stabile Alltags‑Systeme betreibt, wird nicht alle Änderungen unmittelbar bemerken; Server‑ und Workload‑spezifische Szenarien können aber deutlich profitieren. Das Zurückziehen des neuen GPU‑Schedulers zeigt zudem, dass Stabilität Vorrang vor neuen, aber riskanteren Modellen hat.

Kommentar schreiben

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert