Critical Microcode Bug Found In Intel Skylake And Kaby Lake Chips; Disable Hyperthreading Until Fix Comes


Short Bytes: According to the Debian Project, a microcode bug exists in Intel’s Kaby Lake and Skylake chip which can cause the system to behave in a strange way. Originally discovered on a machine running Debian Linux, the bug is independent of any operating system. The users are advised to disable hyperthreading feature until a fix is released.

The people who own PCs running Intel’s Kaby Lake and Skylake chips are advised to turn off the hyperthreading feature, otherwise they could end up with crashes, freezes, or lose valuable data.

A recent warning advisory released by the Debian Project details a microcode bug that exists in 6th and 7th Gen Intel Core chips. It only works when the hyperthreading feature is enabled, which is enabled by default on most computers.

“This defect can, when triggered, cause unpredictable system behavior: it could cause spurious errors, such as application and system misbehavior, data corruption, and data loss,” reads the advisory.

The Debian Project isn’t aware of what all software might trigger the bug. However, they have advised users to disable hyperthreading by visiting BIOS/UEFI settings until a fix is released by Intel. On most machines, BIOS settings can be accessed by pressing the F2 key during startup.

The bug was reported to the Debian Project in May this year, but the investigation revealed malfunctions that happened as back as second-quarter of 2016.

Also, the Intel microcode bug isn’t limited to Debian or any other Linux-based operating system; it can potentially affect any operating system.

How to protect your PC?

You can check whether your chip is affected or not by cross checking its name in the list of Skylake and Kabylake processors by Intel. The chips which don’t support hyperthreading aren’t affected.

On Windows PCs, processor names can be found in Properties of My Computer/This PC. You can check if hyperthreading is enabled or not by following the steps mentioned:

  1. Open CMD in admin mode.
  2. Type wmic and press Enter.
  3. Now, type the following code:
    CPU Get NumberOfCores,NumberOfLogicalProcessors /Format:List

If the logical processors are greater in number, then hyperthreading is enabled.

On Linux Machines, you can use the following command in the terminal to know the processor make and model.

grep name /proc/cpuinfo | sort -u

Check for hyperthreading support using the following command in the terminal:

grep -q '^flags.*[[:space:]]ht[[:space:]]' /proc/cpuinfo && \
	echo "Hyper-threading is supported"

Intel has pushed an update for Kaby Lake to some vendors and it will be delivered in the form of a BIOS/UEFI update. For Skylake, disabling hyperthreading is advised; users have an option to fix the issue manually by updating the microcode themselves.

This might not be the be the cup of tea for every user and the method doesn’t work for all the processors in the 6th generation. Skylake users can find the instructions in a Debian wiki. Alternatively, they can contact their hardware vendors to see if a fix is available.

Got something to add? Drop your thoughts and feedback.

Also Read: Intel Kills Its Joule, Edison, And Galileo Hacker Boards
Aditya Tiwari

Aditya Tiwari

Aditya likes to cover topics related to Microsoft, Windows 10, Apple Watch, and interesting gadgets. But when he is not working, you can find him binge-watching random videos on YouTube (after he has wasted an hour on Netflix trying to find a good show). Reach out at [email protected]
More From Fossbytes

Latest On Fossbytes

Find your dream job