Intel: Skylake- und Kaby-Lake-CPUs mit Hyperthreading rechnen manchmal falsch
Schlechte Nachrichten für Intel: In den aktuellsten Prozessor-Generationen steckt ein schwerwiegender Fehler. Betroffen sind sowohl die letztjährige Plattform Skylake also auch deren Nachfolger Kaby-Lake. Betroffen sind Prozessoren mit aktiviertem Hyper-Threading. Bei diesen kann es passieren, dass der Prozessor falsch rechnet und dadurch unvorhersehbares Verhalten in der ausgeführten Software erzeugt wird, die Folge kann Datenverlust und generelles System-Fehlerverhalten sein.
Erstmals beobachtet wurde der Fehler schon Mitte 2016 durch Programmierer in der Community zur Programmiersprache OCaml, identifiziert wurde er in dieser Community Ende Mai 2017. Nun haben ihn Progammierer des Debian-Projekts öffentlich gemacht.
Intel scheint den Fehler auch schon selber diagnostiziert und dokumentiert zu haben, denn in den Intel Specification-Updates zu Skylake und Kaby-Lake wurden im Apil/Mai zwei neue bekannte Fehler hinzugefügt, die Errata SKL150 und KBL095. Intels Fehlerbeschreibung:
Errata SKZ7/SKW144/SKL150/SKX150/SKZ7/KBL095/KBW095: Short Loops Which Use AH/BH/CH/DH Registers May Cause Unpredictable System Behavior.
Problem: Under complex micro-architectural conditions, short loops of less than 64 instructions that use AH, BH, CH or DH registers as well as their corresponding wider register (e.g. RAX, EAX or AX for AH) may cause unpredictable system behavior. This can only happen when both logical processors on the same physical processor are active.
Implication: Due to this erratum, the system may experience unpredictable system behavior.
Das Advisory des Debian-Projekts empfiehlt allen Nutzern mit PCs, die die betroffenen CPUs enthalten, vorerst Hyper-Threading zu deaktivieren, als vorläufiger Hotfix. Da man nicht genau sagen kann welche Software betroffen ist ist das die einzig sichere Lösung.
Eine dauerhaftere Lösung ist zum Glück für Intel nicht schwierig bereitzustellen, es wäre lediglich ein entsprechendes Microcode-Update nötig. Das kann allerdings nur per UEFI/BIOS-Update an den User gelangen, daher ist es sowohl an Intel als auch an den PC-Herstellern gemeinsam so schnell wie möglich eine Lösung zu finden.