在4~5月期间,英特尔开始更新处理器的勘误文件,其中的内情被曝是因为Skylake和Kaby Lake处理器的微代码(microcode)存在BUG。
上周末,著名Linux发行版Debian发布警示文章,称该BUG涉及英特尔Skylake/Kaby Lake处理器(包括桌面、HEDT、嵌入式移动平台)以及Xeon V5/V6甚至还有奔腾。
症状是,同步多线程开启下会造成一些高危的系统行为。包括应用异常、数据丢失、数据处理超负荷等。
Intel官方的描述是,某些复杂条件下,处理小于64指令(如AH、BH、CH、DH寄存器)的短循环,会造成系统失控。但是,该情况出现仅限同步多线程启用时才有,也就是发生在一个物理线程承载两个逻辑线程时。
修复方式:
Kaby Lake—向主板或OEM厂商索要最新的BIOS/UEFI更新;同时关闭同步多线程
Skylake——shell命令“grep -E 'model|stepping' /proc/cpuinfo | sort -u”,如果输出结果有78/94,且步进为3,请更新7月17日的新系统,该内核(20170511)打包了最新microcode;如果输出结果非上述所显,请关闭同步多线程,直到BIOS/UEFI更新。