Linus Torvalds hat Version 7.2 des Linux-Kernels pünktlich zum geplanten Termin freigegeben. Die Woche zuvor sei arbeitsintensiver gewesen als gewünscht, schrieb Torvalds in seiner Release-Mail, einige Änderungen mussten in letzter Sekunde zurückgenommen werden, etwa am Scheduler des Rendering-Systems DRM. Die größten Neuerungen zielen trotzdem fast alle auf mehr Effizienz.
Neue Scheduler-Algorithmen
Der DRM-Scheduler bekommt trotz der Reverts einen neuen Algorithmus, der sich am Completely Fair Scheduler (CFS) des Kernels orientiert. Der Ansatz soll bei der Zuteilung von Grafikkarten-Rechenzeit bessere Ergebnisse liefern als das bisher genutzte Fifo-Prinzip. Der CPU-Scheduler wiederum bezieht jetzt auch die Cache-Struktur in seine Entscheidungen ein. Das sogenannte Cache-Aware Scheduling soll parallel ausgeführte Threads, die Daten teilen, so verteilen, dass sie denselben Last Level Cache nutzen. Vorerst gilt diese Annahme nur für Threads desselben Prozesses, komplexere Algorithmen sind bereits in Arbeit. Von dem Ansatz profitieren sollen vor allem Prozessoren wie AMDs Epyc-Reihe, bei denen jedes Chiplet einen Teil des Last Level Cache implementiert, sowie Server mit mehreren Sockeln, die dadurch eine bessere Cache-Lokalität und höhere Leistung erreichen.
Schnelleres Swapping und Dateisystem-Verbesserungen
Verbesserungen am Algorithmus, der bestimmt, welche Speicherseiten auf den Swap-Speicher ausgelagert werden, sollen ebenfalls für spürbare Leistungssteigerungen sorgen, bei MongoDB etwa bis zu 30 Prozent. Auch einige Elemente des proc-Dateisystems lassen sich jetzt schneller auslesen.
Bei den Dateisystemtreibern stechen NTFS und Btrfs hervor. Der NTFS-Treiber unterstützt jetzt native Windows-Symlinks, Btrfs arbeitet bei sequenziellem Schreiben und direktem I/O effizienter. Zudem nutzt der Btrfs-Treiber standardmäßig sogenannte Large Folios, bei denen mehrere hintereinanderliegende Speicherseiten logisch zusammengefasst werden, was Zugriffe und Verwaltung effizienter macht. Die bisherige, mit Kernel 6.17 experimentell eingeführte Implementierung nutzte Folios mit maximal 64 Seiten zu je 4 KByte, neu hinzu kommen als experimentelles Feature Huge Folios mit 512 Seiten, also bis zu 2 MByte.
HDMI 2.1 kommt, der 486er geht
Wie bereits angekündigt, hat AMD Code für HDMI-2.1-Unterstützung unter Linux eingereicht, der nun in Kernel 7.2 gelandet ist. Gleichzeitig entfernen die Entwickler Kompatibilitätsmechanismen für ältere x86-Prozessoren. Nach Jahren der Diskussion fällt damit die Unterstützung für 486er-Prozessoren sowie einige 586er ohne Timestamp Counter und CMPXCHG8B-Operation weg.
Daneben gibt es einige kleinere, aber erwähnenswerte Neuerungen. Neben Thunderbolt Networking unterstützt der Kernel bei USB4-Verbindungen jetzt auch Streaming, wodurch sich Daten an einem Ende der Verbindung wie in eine Datei schreiben und am anderen Ende wie aus einer Datei lesen lassen, ganz ohne Netzwerk-Stack. Neu ist außerdem die Unterstützung für Speichermedien mit integrierter Verschlüsselung über das Modul dm-inlinecrypt. Mit der Veröffentlichung von Kernel 7.2 öffnet sich bereits das Merge-Fenster für Version 7.3, die in zwei Monaten erscheinen soll, laut Torvalds liegen dafür schon 40 Pull Requests vor.