forked from pool/glibc
25 lines
864 B
Diff
25 lines
864 B
Diff
|
2018-10-23 Adhemerval Zanella <adhemerval.zanella@linaro.org>
|
||
|
|
||
|
[BZ #23709]
|
||
|
* sysdeps/x86/cpu-features.c (init_cpu_features): Set TSX bits
|
||
|
independently of other flags.
|
||
|
|
||
|
Index: glibc-2.28/sysdeps/x86/cpu-features.c
|
||
|
===================================================================
|
||
|
--- glibc-2.28.orig/sysdeps/x86/cpu-features.c
|
||
|
+++ glibc-2.28/sysdeps/x86/cpu-features.c
|
||
|
@@ -316,7 +316,13 @@ init_cpu_features (struct cpu_features *
|
||
|
| bit_arch_Fast_Unaligned_Copy
|
||
|
| bit_arch_Prefer_PMINUB_for_stringop);
|
||
|
break;
|
||
|
+ }
|
||
|
|
||
|
+ /* Disable TSX on some Haswell processors to avoid TSX on kernels that
|
||
|
+ weren't updated with the latest microcode package (which disables
|
||
|
+ broken feature by default). */
|
||
|
+ switch (model)
|
||
|
+ {
|
||
|
case 0x3f:
|
||
|
/* Xeon E7 v3 with stepping >= 4 has working TSX. */
|
||
|
if (stepping >= 4)
|