Der neue Linux-Kernel 5.8 verbessert unter anderem den Umgang mit „/proc“, stopft eine neu entdeckte Intel-Hardwarelücke und rüstet WPA3 für drei ältere WLAN-Treiber nach.
Dass Kernel 5.8 eine der bislang größten Releases ist, stellte sich bereits im Beitrag zur Veröffentlichung der Vorab-Version 5.8-rc1 heraus. Gestern nun, am 2. August 2020, veröffentlichte Torvalds das Endergebnis, das nebenbei den Codenamen „Kleptomaner Krake“ trägt. Die meisten der neuen Features für die Version 5.8 beschreibt bereits der eben verlinkte Artikel im Detail. Hier gibt es nur einen kurzen Überblick.
Feature-Übersicht
Neu ist unter anderem die Möglichkeit, Schutzzonen für bestimmten Kernelcode zu markieren. Hintergrund ist die Befürchtung, dass einige eBPF-Tools beim Instrumentieren Probleme verursachen, wenn sie auf dafür „anfälligen“ oder gar „gefährlichen“ Code treffen.
Die eBPF-Entwickler blieben auch nicht untätig und führen einen neuen Ringpuffer ein, der als Alternative zu Perf Buffer einspringt und letzterem in der Semantik ähnelt. Allerdings teilt der neue Puffer auch eine Instanz eines Ring-Puffers effizient zwischen verschiedenen CPUs.
Andere Änderungen im Threads-Bereich ermöglichen es, “pidfds” mit Namespaces von Prozessen zu verknüpfen. Diese lassen sich zum Beispiel als erstes Argument dem “setns()”-Syscall mit auf den Weg geben. Das Feature reduziert so die Komplexität im Umgang mit Containern ein Stück weiter.
Dank jüngster Änderungen am Lockdown-Feature, die Jeremy Cline vornahm, dürfen auch unprivilegierte Anwender den Status des Lockdown-Features sehen.
Proc modernisiert
Im Pseudodateisystem “/proc” reparierte Eric Biederman einen Fehler, der offenbar schon sehr lange dort schlummerte. Entwickler Alexej Gladkow modernisierte zugleich “/proc” so, dass jeder Proc-Mount einen neuen Superblock verwendet. Das erlaubt es den Benutzern, “proc” zu mounten, ohne dabei anderen bereits existierenden Proc-Mounts in die Quere zu kommen.
Dank Mike Snitzer lassen sich reguläre Blockgeräte neuerdings besser mit Zoned Devices kombinieren, um dabei Performance-Einbrüche abzumildern. Die entstehen aufgrund der begrenzten Anzahl zufällig beschreibbarer Zonen.
Für das Flash-Dateisystem F2FS berichtet Jaegeuk Kim von Optimierungen am Kompressions-Feature: So unterstützt F2FS nun den „lzo-rle“-Algorithmus.
Auch für das Linux Persistent Storage Filesystem, kurz „pstore“, kündigen sich Aktualisierungen an. Neuerdings lassen sich auch Blockgeräte als „pstore“-Backends verwenden. Die dazugehörige Konfigurationsoption heißt „CONFIG_PSTORE_BLK“.
Besser aufwachen
Die Power-Management-Updates von Rafael Wysocki erleichtern das Umschalten des „cpuidle“-Governors zur Laufzeit, unabhängig von der Kernelkonfiguration. Sie verbessern den Code für den Umgang mit Geräten, die aus dem Userspace-Ruhezustand aufwachen.
Die von Joerg Roedel eingereichten Patches am Input-output Memory Management Unit (IOMMU) ändern die Weise, wie Geräte mit der IOMMU kommunizieren. Anstelle von „add_device()“ und „remove_device()“ kommen nun die Funktionen „probe_device()“ und „release_device()“ zum Einsatz.
Im GPIO-Bereich steckt nun ein Aggregator-Treiber im Linux-Kernel. Der vereint ausgewählte GPIO-Leitungen und erlaubt es auf diesem Wege, Geräte mit Restriktionen zu belegen. Prozesse erhalten dann nur Zugriff auf bestimmte Leitungen, das Feature lässt sich über die Option “CONFIG_GPIO_AGGREGATOR” aktivieren.
Eine neue Hardware-Lücke in Intel-CPUs hängt diesmal mit einem Feature namens Special Register Buffer Data Sampling (SRBDS) zusammen. Sie ermöglicht ein Side-Channel-Leak im Stil von Meltdown und Spectre. Die Schutzmaßnahmen müssen unter anderem die CPU-Modelle und Steppings von Intel identifizieren, was einen Stepping-Match-Support erfordert. Wer sie einsetzt, muss zugleich mit verlangsamten Intel-CPUs vorlieb nehmen.
RISC-V und ARM
Neuerungen für RISC-V betreffen den Support für Kendryte K210, einen RISC-V-basierten Edge-Computing-Chip. Für diesen liefern die Linux-Entwickler nun fehlenden Code nach. Und eine Möglichkeit, Device Trees im Kernel abzubilden, da der K210 keinen Bootloader hat, der einen Device Tree anbietet.
ARM-Entwickler Arnd Bergmann kündigt Support für fünf neue Arm-SoCs an. Dabei handelt es sich um drei Realtek-SoCs, RTD1195, RTD1395 und RTD1619, die in NAS-Geräten und Set-Top-Boxen zum Einsatz kommen. Außerdem gibt es Support für den Renesas RZ/G1H („r8a7742“), den Rockchip RK3326 und zahlreiche neue Maschinen, die auf bereits unterstützten SoCs basieren. Dazu zählen unter anderem TV-Boxen, Single Board Computer und ein Router.
Neues WPA3 in alten Treibern
Für Benutzer der bereits etwas älteren WLAN-Treiber „rt2800“, „b43“ und „b43_legacy“ gibt es gute Nachrichten: alle drei bringen laut Kalle Valo seit Kernel 5.8 Support für WPA3 mit. Der Kernel 5.8 unterstützt zudem Intels Tiger-Lake-Thunderbolt-Controller.
Kernel 5.8 führt Keyring-Benachrichtigungen ein, wobei die Benachrichtigungs-Warteschlange auf einer Standard-Pipe basiert mit spezieller Flag basiert. Einschalten lässt sich das Feature, indem der Admin die neue Kernel-Konfigurationsoption “CONFIG_WATCH_QUEUE” aktiviert.
Updates für Intel- und AMD-Grafik
Die DRM-Entwickler haben derweilen den Kern des Direct Rendering Manager (DRM) umgebaut, um Treiber zu vereinfachen. Der Support für Intels Tigerlake-Plattform ist aktiviert. Der AMDGPU-Treiber unterstützt neuerdings Peer-to-Peer-basiertes PCI-Buffer-Sharing und das Verschlüsseln von GPU-Speicher. Außerdem informieren die DRM-Konnektoren nun den Userspace mithilfe von Sysfs über Hotplug Events, die auftreten, wenn User bestimmte Geräte anstöpseln. Der fertige Kernel wartet wie gewohnt auf Kernel.org oder auf Github.




