Abo
  • Services:
Anzeige
Der Meltdown auf einer Intel-CPU (Symbolbild)
Der Meltdown auf einer Intel-CPU (Symbolbild) (Bild: Marc Sauter/PC Games Hardware/Montage: Oliver Nickel)

Meltown-Patches für Linux

Nutzer von Linux-Systemen sind für Updates gegen Spectre und Meltdown auf die Kernel-Pakete ihrer Distributionen angewiesen, falls diese nicht auf die Upstream-Versionen von Kernel setzen. Aber selbst hier gibt es einige Unterschiede, die es zu beachten gilt. Bei den Updates gegen Meltdown ist die Sachlage noch vergleichsweise übersichtlich. Die aktuelle Kernel-Version 4.14.13 sowie die noch in Entwicklung befindliche Version 4.15 enthalten die Patches für die sogenannten Kernel Page Table Isolation (KPTI). Die finale Version von Linux 4.15 erscheint vermutlich am 21. Januar.

Anzeige

Diese KPTI-Patches basieren wiederum auf den Kaiser-Patches von den Forschern der TU Graz, die die Meltdown-Lücke gefunden haben. Die Kaiser-Patches sind aber bereits zuvor aus anderen Gründen erstellt worden. Kaiser steht für Kernel Address Isolation to have Side-channels Efficiently Removed und die Arbeiten haben sich als gute Grundlage für Gegenmaßnahmen gegen Meltdown erwiesen.

Kernel- und Userspace besser getrennt

Einige offensichtlich frustrierte Kernel-Hacker hatten zwischenzeitlich auch Fuckwit als Codenamen für die Patchserie vorgeschlagen, das steht für Forcefully Unmap complete Kernel with interrupt Trampolines. Unter Windows wird diese Technik als Kernel Virtual Adress (KVA) Shadow bezeichnet. Das Ziel ist es hierbei, den Adressraum des Kernels möglichst weitgehend von dem einer Userspace-Anwedung zu trennen.

  • Die von Intel selbst durch Benchmarks ... (Quelle: Intel)
  • ... mit der jeweiligen Systemkonfiguration. (Quelle: Intel)
  • Ausgabe des Spectre-Meltdown Checkers unter Suse Linux auf einem Intel PC. (Screenshot: Golem.de)
  • Ausgabe des Spectre-Meltdown Checkers unter Suse Linux mit einem Ryzen-Chip von AMD. (Screenshot: Golem.de)
  • Ausgabe des Microsoft Powershell-Tools unter Windows 10 mit einem Broadwell-Chip von Intel. (Screenshot: Golem.de)
Ausgabe des Spectre-Meltdown Checkers unter Suse Linux auf einem Intel PC. (Screenshot: Golem.de)

Bisher war der Kernel standardmäßig in den Userspace gemappt, um einen Kontextwechsel zwischen Kernelspace und Userspace schneller durchführen zu können und den Translation Lookaside Buffer (TLB) hierbei nicht leeren zu müssen. Die CPU sorgt eigentlich für die dennoch notwendige strikte Trennung zwischen Kernel- und Userspace, was bei Meltdown allerdings geschickt umgangen wird. Der Kernel wird künftig nicht mehr so gemappt wie bisher, das neue Verhalten führt damit allerdings zwangsläufig zu einem Leistungsverlust und ist genau deshalb auch bisher vermieden worden.

In zwei ausführlichen Texten beschreibt das Magazin LWN.net die Funktionsweise der Patches sowie die langwierigen Iterationen und von den Kernel-Hackern diskutierte Fehler während der Entwicklung. Gesteuert werden kann die Verwendung von PTI mit der Option pti=(yes|no|auto) über die Kommandozeile des Kernels.

Prozess-Kontexte zu Beschleunigung

Damit die Leistungseinbußen zumindest ein wenig abgemildert werden können, nutzen sowohl Windows als auch Linux Process-Context Identifiers (PCID), sofern die Hardware diese unterstützt. Diese sind zwar seit Jahren theoretisch verfügbar, werden aber erst seit Linux 4.14 sinnvoll unterstützt. Die PCID ermöglichen es, Seitentabellen, die im TLB gecacht sind, mit entsprechenden Kennzeichnungen zu markieren.

Das Nachschlagen (Lookup) im TLB wird dann nur für den jeweiligen Kontext erlaubt, wenn der auf der CPU laufende Thread die gleiche Kennzeichnung hat. Die restlichen Einträge im TLB werden schlicht ignoriert. Das vermeidet das Leeren des TLB bei einem Kontextwechsel. Der Entwickler Gil Tene beschreibt diese Funktion in einem Beitrag sehr ausführlich und erläutert mögliche Probleme bei der Verwendung in Gastsystem von virtuellen Maschinen.

Linux-Nutzer finden über /proc/cpufinfo heraus, ob ihr Intel-Chip PCID unterstützt. Das erwähnte Powershell-Skript für Windows listet die Unterstützung für diese Optimierung unter KVAShadowPcidEnabled, Windows nutzt also wohl eine ähnliche Methode wie Linux. Die Versionsvielfalt von Linux hat den Entwicklern die Update-Arbeit aber nicht unbedingt erleichtert.

Angaben zu Leistungseinbußen unter Linux variieren sehr stark je nach eingesetztem Benchmark, Distribution und den genutzten Patches. Red Hat listet etwa Einbußen bis zu 20 Prozent, insbesondere bei der intensiven Nutzung von Datenbanken und bei Anwendungen mit vielen Kontextwechseln vom Kernel- zum Userspace. Das Magazin Phoronix hat darüber hinaus teilweise massive Leistungseinbußen bei I/O-Operationen festgestellt.

 Was macht Apple für MacOS-Nutzer?Updates für Langzeit-Linux und ARM64 

eye home zur Startseite
Der Held vom... 18:26

Nicht selbst, sondern gerade da wird eher die Grafikkarte zum Flaschenhals. Selbst im...

Themenstart

Der Held vom... 18:16

Allerdings sind das äußerliche Faktoren, die nicht auf die Beschaffenheit des Fahrzeugs...

Themenstart

S-Talker 17:05

Die Funktion wird aber nicht "in der CPU nachgerüstet". Nimm mal eine solche von Intel...

Themenstart

ffrhh 09:18

Aeh, sorry, dieser Artikel ist Mist, die Überschrift clickbait und insgesamt ein Bild...

Themenstart

p4m 02:38

Musste an die Szene zurückdenken und schmunzeln. Danke :)

Themenstart

Kommentieren



Anzeige

Stellenmarkt
  1. Polizeipräsidium Westhessen, Wiesbaden
  2. Robert Bosch Automotive Steering GmbH, Bietigheim-Bissingen
  3. über Nash direct GmbH, Stuttgart
  4. ESWE Versorgungs AG, Wiesbaden


Anzeige
Hardware-Angebote
  1. 1.499,00€
  2. 244,90€ + 5,99€ Versand

Folgen Sie uns
       


  1. Umwelt

    China baut 100-Meter-Turm für die Luftreinigung

  2. Marktforschung

    Viele Android-Apps kollidieren mit kommendem EU-Datenschutz

  3. Sonic Forces

    Offenbar aktuellste Version von Denuvo geknackt

  4. KWin

    KDE beendet Funktionsentwicklung für X11

  5. Sprachassistenten

    Alexa ist Feministin

  6. Elektromobilität

    Elektroautos werden langsam beliebter in Deutschland

  7. Crypto-Bibliothek

    OpenSSL bekommt Patch-Dienstag und wird transparenter

  8. Spectre und Meltdown

    Kleine Helferlein überprüfen den Rechner

  9. Anfrage

    Senat sieht sich für WLAN im U-Bahn-Tunnel nicht zuständig

  10. Gaming

    Über 3 Millionen deutsche Spieler treiben regelmäßig E-Sport



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Spectre und Meltdown: All unsere moderne Technik ist kaputt
Spectre und Meltdown
All unsere moderne Technik ist kaputt
  1. E-Mail-Konto 90 Prozent der Gmail-Nutzer nutzen keinen zweiten Faktor
  2. BeA Noch mehr Sicherheitslücken im Anwaltspostfach
  3. VEP Charter Trump will etwas transparenter mit Sicherheitslücken umgehen

Star Citizen Alpha 3.0 angespielt: Es wird immer schwieriger, sich auszuloggen
Star Citizen Alpha 3.0 angespielt
Es wird immer schwieriger, sich auszuloggen
  1. Cloud Imperium Games Star Citizen bekommt erst Polituren und dann Reparaturen
  2. Star Citizen Reaktionen auf Gameplay und Bildraten von Alpha 3.0
  3. Squadron 42 Mark Hamill fliegt mit 16 GByte RAM und SSD

Snet in Kuba: Ein Internet mit Billigroutern und ohne Porno
Snet in Kuba
Ein Internet mit Billigroutern und ohne Porno
  1. Knappe Mehrheit SPD stimmt für Koalitionsverhandlungen mit Union
  2. DLD-Konferenz Gabriel warnt vor digitalem Schlachtfeld Europa
  3. Facebook Nutzer sollen Vertrauenswürdigkeit von Newsquellen bewerten

  1. Ich schmeiss mich weg...

    Sharra | 19:26

  2. Re: Warum verschweigt er das wahre Problem...

    Pedrass Foch | 19:26

  3. Re: MMO + Survival, nicht MMORPG

    ArcherV | 19:26

  4. Re: Klimawandel/Erderwärmung

    teenriot* | 19:25

  5. Re: Daimler in der Produktionshölle ..

    senf.dazu | 19:25


  1. 18:19

  2. 17:43

  3. 17:38

  4. 15:30

  5. 15:02

  6. 14:24

  7. 13:28

  8. 13:21


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel