Published in News

Skylake and Kaby Lake CPUs have broken hyper-threading

by on26 June 2017


Dark side of the hyperthreading loom 


While the war is blazing between Intel and AMD fanboys over the superiority of the latest range of chips, Debian developers have spotted some rather nasty coding in Chipzilla’s latest creations.

During April and May, Intel started updating processor documentation with a new errata note and it turned out that the reason was that Skylake and Kaby Lake silicon has a microcode bug it did not want any one to find out about.

The errata is described in detail on the Debian mailing list, and affects Skylake and Kaby Lake Intel Core processors in desktop, high-end desktop, embedded and mobile platforms, Xeon v5 and v6 server processors, and some Pentium models.

According to the Debian advisory says affected users need to disable hyper-threading “immediately” in their BIOS or UEFI settings, because the processors can “dangerously misbehave when hyper-threading is enabled”.

Symptoms can include application and system misbehaviour, data corruption, data loss and voting Donald Trump. We made the last one up.

Henrique de Moraes Holschuh warned that all operating systems, not only Linux, were subject to the bug.

Intel said that 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 (eg RAX, EAX or AX for AH) may cause unpredictable system behaviour.

“This can only happen when both logical processors on the same physical processor are active.”

It might never have been noticed if Mark Shinwell, a developer working on the OCamlL toolchain, had not contacted the Debian team to explain that the OCaml compiler triggered an Intel microcode issue.

Debian's post notes that Intel has documented the bug and its microcode fixes for Core 6th generation, Core 7th generation, Xeon v5 and v6, and Core 6th generation X series. Mostly this depends on vendors providing BIOS/UEFI updates. However, until they do that, it would be to disable hyper-threading or even shift to AMD.

Last modified on 26 June 2017
Rate this item
(0 votes)

Read more about: