Die Neuerungen von Linux 4.17

Seite 2: Spectre-v4-Schutz, HDCP-Support, neue Grafiktreiber

Inhaltsverzeichnis

Der neue Kernel enthält einige Verbesserungen am Schutz vor den Anfang Januar bekannt gewordenen Prozessorlücken Spectre v1 und v2 (u. a. 1, 2, 3). Der Code für Systemaufrufe wurde zudem aufgeräumt, um System Calls gegen Attacken mit spekulativer Code-Ausführung abzusichern (u. a. 1, 2, 3; siehe auch "Rewiring x86 system-call dispatch" bei LWN.net).

Darüber hinaus gab es eine Optimierung, um die Performance der bei 4.15 integrierten Meltdown-Gegenmaßnahme PTI (Page Table Isolation) auf zumeist älteren Prozessoren zu verbessern, die keine PCID (Process-Context Identifiers) beherrschen. Auf solchen kann der Kernel jetzt einige Speicherseiten als global markieren, was den Overhead der Schutztechnik reduziert und das System so beschleunigt (u. a. 1, 2, 3, 4).

Die Arbeitsweise des Spectre-v4-Schutzes lässt sich über den Kernel-Parameter "spec_store_bypass_disable=" beeinflussen.

Ferner erhielt Linux einige Maßnahmen gegen die Mitte Mai bekannt gewordene Schwachstelle Spectre v4 aka Speculative Store Bypass (SSB). Bereits kurz nach Aufnahme dieser Mechanismen flossen die Änderungen auch in Stable- und Longterm-Kernel wie 4.9.102, 4.14.42 und 4.16.11 ein, die keine 24 Stunden nach Publikwerden der Lücke erschienen.

Bei all diesen Linux-Versionen können die Spectre-v4-Gegenmaßnahmen in verschiedenen Modi arbeiten, die sich über den Kernel-Parameter spec_store_bypass_disable= wählen lassen. Derzeit ist der Schutz aber auf vielen Systemen inaktiv, denn er ist auf neue, über Microcode-Updates nachgerüstete CPU-Funktionen angewiesen – die neuen Microcodes verteilt Intel aber bislang nicht frei.

Der für Intels moderne Grafikchips zuständige Treiber i915 beherrscht jetzt HDCP (High-bandwidth Digital Content Protection) (u.a. 1, 2, 3, 4, 5, 6). Google-Entwickler haben den dafür zuständigen Code beigesteuert: ChromeOS nutzt ihn bereits zur Wiedergabe hochauflösender Videos, was Videoplayer nur erlauben, wenn Hardware und Betriebssystem den Kopierschutz implementieren.

Intels Treiber spricht darüber hinaus nun auch die Grafikkerne von Prozessoren der Cannon-Lake-Familie an, die Intel seit kurzem im Rahmen der Core-i-8000er-Serie verkauft; bei 4.16 war der Support noch unvollständig, daher wurde er dort nur bei Angabe des Parameters i915.alpha_support=1 aktiv. Diesen braucht man fürs Erste beim brandneuen und noch rudimentären Support für die GPU von Icelake-Prozessoren, die Intel innerhalb des nächsten Jahres einführen dürfte.

AMDs umfangreiche und bei Linux 4.15 integrierte Infrastruktur DC (Display Core) wird jetzt automatisch auch für ältere Grafikchips aktiviert, wenn man eine neue Kernel-Konfiguration erzeugt. Die unter anderem für HDMI 2.0 sowie die Audio-Weiterleitung via HDMI und DisplayPort wichtige Erweiterung erreicht so mehr Nutzer, was den Out-of-the-Box Support für AMDs in den letzten Jahren vertriebene Grafikprozessoren verbessert. Darüber hinaus unterstützt der Amdgpu-Treiber jetzt Vega12-Chips, die AMD offenbar in den nächsten Wochen oder Monaten einführen will.

Dank Erweiterungen am Treiber Amdkfd lässt sich AMDs GPU-Computing-Lösung ROCm jetzt auch mit Hawaii-, Tonga-, Polaris- und Fiji-GPUs zum Rechnen nutzen (GPGPU/General-purpose computing on Graphics Processing Units) (u. a. 1, 2, 3, 4, 5). Vergleichbare Umbauten zur Unterstützung von AMDs aktuellen High-End-GPUs der Vega-Serie sollen bei 4.18 folgen.

Der Ext4-Maintainer warnt davor, Nutzern in Containern das Mounten beliebiger Dateisystem-Images zu erlauben.

(Bild: git.kernel.org – 3e968c9f1401 )

Die Entwickler haben den Ext4-Code robuster gemacht, damit er bei arglistig modifizierten Dateisystemstrukturen nicht so leicht auf die Nase fällt. Der Ext4-Maintainer schreibt in dem Kontext aber warnend: Container-Leute sollten sich keine Illusionen machen, dass es dadurch akzeptabel würde, in Containern ein Mounten von beliebigen, womöglich von Angreifern modifizierten Ext4-Images zu erlauben.

Das XFS-Dateisystem beherrscht nun die Mount-Option lazytime, die Ext4 seit Linux 4.0 kennt; sie verbessert die Performance, indem sie die Schreibvorgänge verzögert, die ein Aktualisieren von Zugriffs-, Änderungs- oder Modifikationszeiten triggert.

Beim CIFS-Dateisystem, mit dem sich Dateifreigaben von Samba und Windows mounten lassen, gilt der Support für SMB 3.1.1 nicht mehr als experimentell. Zudem beherrscht CIFS nun die bei SMB 3.1.1 definierte Pre-Authentication Integrity, die Man-in-the-Middle-Attacken erschwert.

Durch Änderungen am Code zur Handhabung von Schreibfehlern erfahren Programme verlässlicher, wenn Fehler beim Schreiben der Daten auftreten, die der Kernel im Writeback-Cache zwischengespeichert hat. Das ist vor allem für PostgreSQL gedacht, dessen Entwickler jüngst eine Eigenart aktueller Kernel-Versionen aufgefallen war, durch die Fehler beim Schreiben der Datenbankdatei in bestimmten Fällen unbemerkt blieben.