Kernel-Log | c't | Heise Magazin



Aufmacherbild

Linux 5.2: Bei Groß- und Kleinschreibung bleiben locker

Dank neuer Kernel-Treiber können Sie jetzt die 3D-Beschleunigung vieler Einplatinencomputer verwenden. Die Storage-Performance liegt in bestimmten Konstellationen deutlich zu. Außerdem ist es jetzt ganz leicht, einige Schutztechniken auszuknipsen, die viel Leistung verbrennen.

Von Thorsten Leemhuis

KLinux erscheint nach Erscheinen dieser c’t oder spätestens Mitte Juli 5.2. Dort wird das verbreitete Ext4-Dateisystem etwas, was in der Windows-Welt ganz normal war: die Groß- und Kleinschreibung von Datei- und Verzeichnisnamen zu ignorieren. Dieses Verhalten ist standardmäßig inaktiv. Wer es nutzt, muss es zuerst beim jeweiligen Dateisystem im Superblock freischalten. Anschließend kann man es durch Setzen eines Attributs an einem noch leeren Verzeichnis aktivieren; Unterverzeichnisse übernehmen die Einstellung.

Dieses „Casefold Feature“ für Ext4 soll bei Android zum Einsatz kommen. Auch der Staging-Zweig von Wine, das Windows-Programm ausführt, kann es schon nutzen. Case Insensitivity sorgt seit langem für immer wieder Debatten, ist in der Linux-Welt aber nichts wirklich Neues, denn das angesehene XFS-Dateisystem beherrscht sie schon lange. Es wird keine Groß- und Kleinschreibung sondern nur der Bereich der ASCII-Zeichenkodierung, also praktisch nur von A bis Z. Ext4 hingegen realisiert MByte schwere UTF-8-Zeichentabelle von Unicode 12.1.0, um Sprachen mit weiteren Zeichen besser zu unterstützen.

Performance zurückgewinnen

Mit dem neuen Bootparameter Milderungen = aus kann man die Geschwindigkeit steigern, denn er legt Gegenmaßnahmen für Sicherheitslücken wie Spectre, Meltdown und ZombieLoad an, die in modernen Hauptprozessoren klaffen und in den letzten eininhalb Jahren publik wurden. Wie stark die Performance steigt, hängt von Prozessor und eingesetzter Software ab. Make sollte man aber nur, wo keine Gefahr droht – beispielsweise bei einer Video-Encodier-Workstation oder einem HPC-Cluster, wo man nur hausintern erzeugte und vertrauenswürdige Programme ausführt.

Treiber für ARM-Grafik

Für die verbreiteten ARM-Grafikkerne der Mali-Reihe bringt Linux jetzt die Grafiktreiber Lima und Panfrost mit. Auf ihnen bauen gleichnamige OpenGL-Treiber zur 3D-Beschleunigung auf, die wichtigsten Neuerungen des kürzlich erschienenen Mesa 19.1 sind. Mit einem der beiden Treiber-Duos können Mali-GPUs genutzt werden, die verschiedene Hersteller in SoCs (System-on-a-Chip) einsetzen – etwa in Android-Geräten, Chromebooks, Embedded Systems oder Einplatinensystemen (Single Board Computers / SBCs).

Lima unterstützt dabei „Utgard“ -GPUs der Mail-400er-Serie. Panfrost hingegen spricht die neuen Mali-Generationen „Midgard“ und „Bifrost“ an, die unter den Mali-Modellbezeichnungen T6xx, T7xx, T8xx bzw. G3x, G5x, G7x segeln. ARM ist an der Entwicklung dieses Treibers nicht beteiligt und es werden auch keine Informationen bereitgestellt, weshalb sie durch Reverse Engineering entstanden sind. Die Treiber-Duos unterstützen daher nur einen Teil der Hardware-Funktionen und wurden bisher auch nur mit wenigen Grafikprozoren getestet.

30.000 Dateien geändert

Die Linux-Entwickler haben für Linux 5.2 nicht wie sonst elf- bis dreizehntausend Dateien verändert, sondern über dreißigtausend. Für den Umfang der Neuerungen ist das aber unbedeutend, denn dieser Rekord entstand durch Thomas Gleixner und einige Mitstreiter: Sie haben in tausenden Quelltextdateien verschiedene Mehrzeiler mit Lizenzinformationen durch einzeilige Lizenzauszeichner ersetzt. Diese am Dateianfang stehende SPDX License Identifier lauten etwa „GPL-2.0-or-later“ oder „GPL-2.0-only“ und lassen sich von Compliance-Werkzeugen leicht und unmissverständlich abfragen. Vor allem, wenn Sie ein Open-Source-Lizenzprogramm verwenden, können Sie den Überblick behalten.

Über die Datei /proc/kheaders.tar.xz kann Linux jetzt eine Reihe von Entwicklerdateien bereitstellen, die gelegentlich für Kernel-nahe Tätigkeiten benötigt werden – etwa zur Ablaufverfolgung (Tracing) oder zum nachträglichen Kompilieren von Kernel-Modulen. Das ist vorwiegend für Android und Embedded-Systeme gedacht: Dort ist es unüblich, diese Header- und Devel-Dateien mit dem Root-Dateisystem auszuliefern, wie es Linux-Distributionen für PCs machen.

Grafiktreiber

Der Treiber i915 unterstützt jetzt Grafikprozessoren der elften Generation, die in CPUs mit Codenamen „Ice Lake“ stecken. Zu den ersten derartigen Prozessoren zählen für flache Notebooks gedachte CPUs wie Core i5-1035 G1 und Core i7-1065 G7, die Intel kürzlich vorgestellt hat. OpenGL- und Vulkan-Treiber für diese Chips stecken im jüngsten veröffentlichten Mesa 19.1.

Der neue Kernel unterstützt auch schon die GPUs der Intel-Plattform Elkhart Lake, die wie Ice Lake eine Gen11-GPU enthält, aber auf Embedded-Prozessoren (Atom) und Billig-CPUs (günstige Celerons & Co.) zielt. Ferner weiß der Kernel jetzt auch schon den Grafikprozessor von „Comet Lake“ -CPUs, die anzusprechen, die bald erscheinen sollen und für Desktop-PCs und leistungsstärkste Notebooks gedacht sind.

Der Nouveau-Treiber für Nvidia-Chips unterstützt jetzt auch TU117-GPUs, die bei der GeForce GTX 1650 im Einsatz sind. Die Kernel-Entwickler haben außerdem den Cirrus-Treiber generalüberholt, der Grafikchip entspricht, der das oft mit KVM und Xen kombinierte Qemu emuliert. In diesem Fall ist der Treiber deutlich schlanker, aber auch für moderne Systeme wichtig, wie Wayland-Unterstützung.

Geschwindigkeitszuwachs

Ein ganzer Schwung von Änderungen verspricht die Performance von Budget Fair Queuing (BFQ) zu verbessern – dem von manchen Distributionen standardmäßig verwendeten Storage-I / O Scheduler, der bei Datenträgerzugriffen die gerade anstehende Lese- und Schreiboperation ausführen kann, um die Performance zu verbessern. In einem Entwicklertest mit konkurrierenden Zugriffen konnte BFQ dadurch von 80 auf 200 MByte / s zulegen. Die Umbauten beim Nachfolger des früher verbreiteten I / O-Schedulers CFQ (Completely Fair Queuing) sollen ferner die CPU-Belastung reduzieren und das Programm schneller starten, wenn parallel auf demselben Datenträger geschrieben wird.

Mithilfe des neuen Pressure Stall Monitors können Überwachungsprogramme jetzt innerhalb von Millisekunden und ohne viel Overhead reagieren, wenn Überlastung droht oder bereits eingetreten ist. Google wird das bei Android nutzen, um etwa zeitnah problematische Hintergrund-Software abzuschießen, damit Vordergrundprogramme immer flott reagieren.

Die IOMMU-Infrastruktur von Linux bietet nun „AUX Domain Support“. Damit unterstützt sie Intels bei VT-d 3.0 spezifizierte Scalable I / O Virtualization. Ähnlich wie bei der Single Root I / O-Virtualisierung (SR-IOV) können Sie Funktionen von Hardwarekomponenten unter der Kontrolle von virtuellen Maschinen (VMs) oder Prozessen anzeigen, ohne die Sicherheit des Systems zu gefährden. Mit dem neuen Ansatz funktioniert das deutlich kleinteiliger; anders als SR-IOV kann ein Netzwerkchip so hunderte oder mehr virtuelle Netzwerkschnittstellen bereitstellen, die unterschiedliche Container autark nutzen können.

Neue WLAN-Treiber

Erstmals wird der Treiber Rtw88, der per PCIe angebundenen 802.11ac-WLAN-Chips RTL8822BE und RTL8822CE anspricht. Der von Realtek beigesteuerte Treiber weist allerdings noch allerlei Funktionslücken und Schwächen auf, die der Hersteller bald beseitigen wird; Bluetooth und WLAN können nicht gleichzeitig genutzt werden. Über den neuen Treiber Mt76 unterstützt Linux jetzt auch die 4×4-802.11ac-WLAN-Chips der Mediatek-Serie MT7615; auch er hat noch Schwächen, aber nicht so deutliche.



Bei zahlreichen AMD-Ryzen-Notebooks funktionieren Touchscreen und Touchpad mit dem neuen Kernel endlich.

Viele Notebooks mit AMD-Ryzen-Prozessoren laufen mit Linux 5.2 besser, etwa das Dell Latitude 5495 oder die Lenovo-Modelle Yoga 530 und Ideapad 530s. The is an a I2C-driver to be in the Linux now finally the Touchpads and Touchscreens.

Der neue Kernel unterstützt einige drahtlose Logitech-Mäuse und -Tastaturen (etwa die Modelle MX3000 und MX5000) jetzt besser. Asus-Notebooks sind mit dem neuen Treiber für das Macally Ikey Keyboard und einer Erweiterung ausgestattet, die den Funktionsstasten-Sperr-Taste (FN-Lock) aktiviert.

Ausschussware

Zwei Linux-Entwickler haben angekündigt, 2021 die Infrastruktur und den Treiber per IDE (Integrated Drive Electronics) angesprochene Datenträger über Gerätenamen wie / dev / hda oder / dev / hdc bereitstellen zu wollen. This is some users available, obwohl es nur für Nostalgiker und Leute mit exotischer oder alter Hardware relevant ist: Modern Linux-Distributionen supported the also Parallel-ATA (PATA) of the IDE with the Libata-Subsystem, the Datenträger about Block-Devices wie / dev / sda und / dev / sdb bereitstellt und im Kernel bleibt.

Schon bei Linux 5.3 soll es viele Treibern für ISDN-Hardware geben, denn Linux-Entwickelt werden die meisten öffentlichen ISDN-Netzwerke inzwischen ohnehin abgeschaltet. Das alte, von niemandem mehr betreute ISDN4Linux (I4L) soll vollständig getilgt werden. Der jüngere CAPI-Stack wandert in den Staging-Zweig und soll bald dasselbe Schicksal ereilen, sofern Anwender kein Einspruch erheben. Der mISDN-Stack, der die meisten von Hisax unterstützten Chips ansprechen kann, bleibt hingegen im Kernel.

Apropos 5.3: Dieser Kernel dürfte Mitte September erscheinen. Mit an Sicherheit grenzender Wahrscheinlichkeit wird der Grafiktreiber dort lernen, Monitor mit High Dynamic Range (HDR) anzusteuern. Ferner sollte dort eine umfangreiche Erweiterung des Treibers Amdgpu einfließen. Durch sie unterstützt AMDs Treiber die Navi10-Chips für ihre neue Architektur „Radeon-DNA“ (RDNA), die am 7. Juli mit drei Mittelklasse-Grafikkarten der Radeon-RX-5700-Reihe debütiert. (thl@ct.de)



Zum Artikel

Ähnliche Artikel:

WordPress › Fehler

Die Website weist technische Schwierigkeiten auf.