local-blacklist-for-Intel-TSX
authorGNU Libc Maintainers <debian-glibc@lists.debian.org>
Sun, 28 May 2017 17:29:33 +0000 (17:29 +0000)
committerAurelien Jarno <aurel32@debian.org>
Sun, 28 May 2017 17:29:33 +0000 (17:29 +0000)
commita172060b7e86f1e89bb6d19ee406a825f1370512
tree62236a2480c573bcfea63432927d49455c9f172c
parent8d87a6a9670dafbfe8182c3fbba6ba9adae8d0a6
local-blacklist-for-Intel-TSX

Intel TSX is broken on Haswell based processors (erratum HSD136/HSW136)
and a microcode update is available to simply disable the corresponding
instructions.

A live microcode update will disable the TSX instructions causing
already started binaries to segfault. This patch simply disable Intel
TSX (HLE and RTM) on processors which might receive a microcode update,
so that it doesn't happen.  We might expect newer steppings to fix the
issue (e.g. as Haswell-EX did).

Intel TSX-NI is also broken on Broadwell systems, and documented as
being unavailable in their specification updates errata list.  However,
some end-user systems were shipped with old microcode that left Intel
TSX-NI still enabled in CPUID on these processors.  We must not allow
RTM to be used by glibc on these systems, due to runtime system
misbehavior and live-update of microcode hazards.

Author: Henrique de Moraes Holschuh <hmh@debian.org>

Gbp-Pq: Topic amd64
Gbp-Pq: Name local-blacklist-for-Intel-TSX.diff
sysdeps/x86/cpu-features.c
sysdeps/x86/cpu-features.h