• IT-Karriere:
  • Services:

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.

Stellenmarkt
  1. CureVac AG, Tübingen bei Stuttgart
  2. Stadt Hildesheim, Hildesheim

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.

Golem Akademie
  1. Microsoft 365 Security Workshop
    9.-11. Juni 2021, Online
  2. Docker & Containers - From Zero to Hero
    15. - 17. Juni 2021, online
Weitere IT-Trainings

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.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 Was macht Apple für MacOS-Nutzer?Updates für Langzeit-Linux und ARM64 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8. 7
  9. 8
  10.  


Anzeige
Top-Angebote
  1. (u. a. be quiet! Pure Rock Slim für 17,99€ inkl. Versand und be quiet! Pure Base 600 für 59...
  2. (u. a. Northgard für 7,99€, No Man's Sky für 14,99€, PSN Card 20 Euro [DE] - Playstation...
  3. (u. a. 1m 8K HDMI 2.1 Ultra High Speed 48G 4K@120Hz/8K@60Hz + 1m Cat 8 Netzwerkkabel für 17,90€)

logged_in 14. Feb 2018

i7-930 hier. Hast sicher auch schon oft nach einem guten Upgrade gesucht, und dann aus...

cryptomagic 08. Feb 2018

Der Frage haben wir uns genauer angenommen, und unsere Ergebnisse in einem Artikel...

daydreamer42 28. Jan 2018

Ohne entsprechende Betriebssystem-Patches sind die Microcode-Patches wertlos. Der Linux...

Bachsau 27. Jan 2018

Eben genau nicht. Man braucht keine Root-Rechte.

Der Held vom... 25. Jan 2018

Du hast aber schon gelesen (und verstanden) was ich schrieb, oder? Von Taktraten war da...


Folgen Sie uns
       


Toyota Mirai II Probe gefahren

Die Brennstoff-Limousine gefällt uns, aber Tankstellen muss man suchen.

Toyota Mirai II Probe gefahren Video aufrufen
Programm für IT-Jobeinstieg: Hoffen auf den Klebeeffekt
Programm für IT-Jobeinstieg
Hoffen auf den Klebeeffekt

Aktuell ist der Jobeinstieg für junge Ingenieure und Informatiker schwer. Um ihnen zu helfen, hat das Land Baden-Württemberg eine interessante Idee: Es macht sich selbst zur Zeitarbeitsfirma.
Ein Bericht von Peter Ilg

  1. Arbeitszeit Das Sechs-Stunden-Experiment bei Sipgate
  2. Neuorientierung im IT-Job Endlich mal machen!
  3. IT-Unternehmen Die richtige Software für ein Projekt finden

Weclapp-CTO Ertan Özdil: Wir dürfen nicht in Schönheit und Perfektion untergehen!
Weclapp-CTO Ertan Özdil
"Wir dürfen nicht in Schönheit und Perfektion untergehen!"

Der CTO von Weclapp träumt von smarter Software, die menschliches Eingreifen in der nächsten ERP-Generation reduziert. Deutschen Perfektionismus hält Ertan Özdil aber für gefährlich.
Ein Interview von Maja Hoock


    Fiat 500 als E-Auto im Test: Kleinstwagen mit großem Potenzial
    Fiat 500 als E-Auto im Test
    Kleinstwagen mit großem Potenzial

    Fiat hat einen neuen 500er entwickelt. Der Kleine fährt elektrisch - und zwar richtig gut.
    Ein Test von Peter Ilg

    1. Vierradlenkung Elektrischer GMC Hummer SUV fährt im Krabbengang seitwärts
    2. MG Cyberster MG B Roadster mit Lasergürtel und Union Jack
    3. Elektroauto E-Auto-Prämie übersteigt in 2021 schon Vorjahressumme

      •  /