Blame SOURCES/06-55-04_readme

347126
Intel Skulake Scalable Platform CPU models that belong to Workstation and HEDT
347126
(Basin Falls) segment (SKL-W/X, family 6, model 85, stepping 4) have reports
347126
of system hangs on reboot when revision 0x2000065 of microcode, that is included
347126
since microcode-20191112 update, is applied[1].  In order to address this,
347126
microcode update to this revision has been disabled by default on these systems,
f3c512
and the previously published microcode revision 0x2000064 is used by default
f3c512
for the OS-driven microcode update.
f3c512
347126
[1] https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/issues/21
347126
f3c512
For the reference, SHA1 checksums of 06-55-04 microcode files containing
f3c512
microcode revisions in question are listed below:
f3c512
 * 06-55-04, revision 0x2000064: 2e405644a145de0f55517b6a9de118eec8ec1e5a
f3c512
 * 06-55-04, revision 0x2000065: f27f12b9d53f492c297afd856cdbc596786fad23
f3c512
f3c512
Please contact your system vendor for a BIOS/firmware update that contains
f3c512
the latest microcode version.  For the information regarding microcode versions
f3c512
required for mitigating specific side-channel cache attacks, please refer
f3c512
to the following knowledge base articles:
f3c512
 * CVE-2017-5715 ("Spectre"):
f3c512
   https://access.redhat.com/articles/3436091
f3c512
 * CVE-2018-3639 ("Speculative Store Bypass"):
f3c512
   https://access.redhat.com/articles/3540901
f3c512
 * CVE-2018-3620, CVE-2018-3646 ("L1 Terminal Fault Attack"):
f3c512
   https://access.redhat.com/articles/3562741
f3c512
 * CVE-2018-12130, CVE-2018-12126, CVE-2018-12127, and CVE-2019-11091
f3c512
   ("Microarchitectural Data Sampling"):
f3c512
   https://access.redhat.com/articles/4138151
f3c512
 * CVE-2019-0117 (Intel SGX Information Leak),
f3c512
   CVE-2019-0123 (Intel SGX Privilege Escalation),
f3c512
   CVE-2019-11135 (TSX Asynchronous Abort),
f3c512
   CVE-2019-11139 (Voltage Setting Modulation):
f3c512
   https://access.redhat.com/solutions/2019-microcode-nov
f3c512
f3c512
The information regarding enforcing microcode update is provided below.
f3c512
f3c512
To enforce usage of the 0x2000065 microcode revision for a specific kernel
f3c512
version, please create a file "force-intel-06-55-04" inside
f3c512
/lib/firmware/<kernel_version> directory, run
f3c512
"/usr/libexec/microcode_ctl/update_ucode" to add it to firmware directory
f3c512
where microcode will be available for late microcode update, and run
f3c512
"dracut -f --kver <kernel_version>", so initramfs for this kernel version
f3c512
is regenerated and the microcode can be loaded early, for example:
f3c512
f3c512
    touch /lib/firmware/3.10.0-862.9.1/force-intel-06-55-04
f3c512
    /usr/libexec/microcode_ctl/update_ucode
f3c512
    dracut -f --kver 3.10.0-862.9.1
f3c512
f3c512
After that, it is possible to perform a late microcode update by executing
f3c512
"/usr/libexec/microcode_ctl/reload_microcode" or by writing value "1" to
f3c512
"/sys/devices/system/cpu/microcode/reload" directly.
f3c512
f3c512
To enforce addition of this microcode for all kernels, please create file
f3c512
"/etc/microcode_ctl/ucode_with_caveats/force-intel-06-55-04", run
f3c512
"/usr/libexec/microcode_ctl/update_ucode" for enabling late microcode updates,
f3c512
and "dracut -f --regenerate-all" for enabling early microcode updates:
f3c512
f3c512
    mkdir -p /etc/microcode_ctl/ucode_with_caveats
f3c512
    touch /etc/microcode_ctl/ucode_with_caveats/force-intel-06-55-04
f3c512
    /usr/libexec/microcode_ctl/update_ucode
f3c512
    dracut -f --regenerate-all
f3c512
f3c512
Please refer to /usr/share/doc/microcode_ctl/README.caveats for additional
f3c512
information.