Project

General

Profile

Feature #24819

Add devcpu-data to allow CPU microcode update for Intel Skylake/Kaby Lake processors

Added by S. Schlüters over 1 year ago. Updated 12 months ago.

Status:
Resolved
Priority:
Important
Assignee:
Alexander Motin
Category:
OS
Target version:
Estimated time:
Sprint:
Severity:
New
Backlog Priority:
Reason for Closing:
Reason for Blocked:
Needs QA:
No
Needs Doc:
Yes
Needs Merging:
Yes
Needs Automation:
No
Support Suite Ticket:
n/a
Hardware Configuration:

Description

Apparently there is a bug in the Hyperthreading functionality in all (?) Skylake and Kaby Lake processors (see https://www3.intel.com/content/dam/www/public/us/en/documents/specification-updates/desktop-6th-gen-core-family-spec-update.pdf (SKL150) or https://lists.debian.org/debian-devel/2017/06/msg00308.html).


Related issues

Is duplicate of FreeNAS - Feature #25829: please incl devcpu-dataClosed: Duplicate2017-09-10

Associated revisions

Revision 1b008e10 (diff)
Added by Alexander Motin over 1 year ago

Add sysutils/devcpu-data port to allow CPU microcode update.

Ticket: #24819

Revision 3e918a8a (diff)
Added by Dru Lavigne about 1 year ago

Mention Skylake and Ryzen support.
Ticket: #24819
Ticket: #25987

History

#1 Updated by Mark Levitt over 1 year ago

S. Schlüters wrote:

Apparently there is a bug in the Hyperthreading functionality in all (?) Skylake and Kaby Lake processors (see https://www3.intel.com/content/dam/www/public/us/en/documents/specification-updates/desktop-6th-gen-core-family-spec-update.pdf (SKL150) or https://lists.debian.org/debian-devel/2017/06/msg00308.html).

Just to add some more context...This is a bug that potentially causes unpredictable behaviour, including data corruption.

For Skylake CPUs, Intel has released a microcode update which needs to be applied at boot time.

It looks like this package contains the updated microcode that fixes the problem: https://www.freshports.org/sysutils/devcpu-data/
and https://svnweb.freebsd.org/ports?view=revision&revision=442023

#2 Updated by Alexander Motin over 1 year ago

  • Category changed from 137 to 76
  • Status changed from Unscreened to Closed: Third party to resolve

According to this, it is a very rare problem: https://lists.debian.org/debian-devel/2017/06/msg00327.html So I don't think some urgent actions are required from our side. Will see what people say after emotions calm down. Users should probably check for BIOS updates for their systems. If it is important, there should be updates. While microcode update indeed can be done from OS level, usually it is done by BIOS.

#3 Updated by Mark Levitt over 1 year ago

I don't think we should have to wait for motherboard vendors to update their BIOS. Motherboard vendors probably won't bother because there is a microcode update already out for Linux (and presumably Microsoft and Apple will roll it into their updates).

Is the chance of this happening low enough that you'd recommend continuing the use of a hyper threading CPU with a ZFS filesystem? Given how often people insist that using Non-ECC RAM can lead to catastrophic data loss, this seems like a potentially more common issue for people doing heavy transcoding with Plex, for example.

#4 Updated by Joe Schmuck over 1 year ago

I too feel that adding in the fix should be done sooner than later and implemented in FreeNAS. The fact that it could happen is enough to promote implementing the fix and not blowing it off hoping the motherboard vendors will update the BIOS. This is an especially easy update that has already been provided in Fresh Ports (as noted above). This will also need to be done for TrueNAS as well.

#5 Updated by Alexander Motin over 1 year ago

  • Status changed from Closed: Third party to resolve to Investigation

The reason I think it may be not a huge deal is that I personally run Kaby Lake laptop with FreeBSD and ZFS since November (and I am still typing this), and I am sure there are a lot of people running Skylake systems for much longer. On second look it indeed does not look like a big deal to install some port and make it run it on boot, but lets not make rapid movements and not feed paranoia, which thanks to Debian developers aggressive statements decided to run through news right now.

What's about TrueNAS, Xeon v5 CPUs (which are of affected Skylake generation) are still not even released, and won't be for months, and I think that time should be enough to patch the BIOS images with updated microcode.

#6 Updated by Alexander Motin over 1 year ago

  • Tracker changed from Bug to Feature
  • Status changed from Investigation to Fix In Progress
  • Priority changed from No priority to Important
  • Target version set to 11.1

I've added sysutils/devcpu-data ports to nightly builds. Adding rc.conf option microcode_update_enable="YES" via WebUI should enable it.

#7 Updated by Joe Schmuck over 1 year ago

Thanks for adding it.

I don't understand your comment about Xeon v5 CPUs have not been released. I have an E3-1230v5 CPU, had it for quite some time, unless I missed the way the versioning is listed. This isn't the place to debate it but just wanted to state that v5 CPUs are out.

#8 Updated by Alexander Motin over 1 year ago

Xeon E5 v5 are not yet released.

#9 Updated by Dru Lavigne about 1 year ago

  • Status changed from Fix In Progress to 46

Sasha: what is the ETA for Xeon E5 v5? In other words, should a separate ticket be made for those with a later target version and this one marked as resolved for 11.1?

#10 Updated by Alexander Motin about 1 year ago

  • Status changed from 46 to Ready For Release

They were released not so long ago.

Lets close this probably. The requested port is included into the build and the only reason I haven't closed this ticket is that I haven't decided whether to enable the CPU firmware patching by default. And I still haven't. Those who wish are free to do it on their own risk as specified above.

#11 Updated by Dru Lavigne about 1 year ago

  • Subject changed from Intel Skylake/Kaby Lake processors: broken hyper-threading to Add devcpu-data to allow CPU microcode updatefor Intel Skylake/Kaby Lake processors

#12 Updated by Dru Lavigne about 1 year ago

#13 Updated by Dru Lavigne about 1 year ago

  • Subject changed from Add devcpu-data to allow CPU microcode updatefor Intel Skylake/Kaby Lake processors to Add devcpu-data to allow CPU microcode update for Intel Skylake/Kaby Lake processors
  • Target version changed from 11.1 to 11.1-BETA1

#14 Updated by Dru Lavigne 12 months ago

  • Status changed from Ready For Release to Resolved

#15 Updated by Joe Maloney 12 months ago

  • Needs QA changed from Yes to No
  • QA Status deleted (Not Tested)

Also available in: Atom PDF