時間:2017-06-26 來源:互聯網 瀏覽量:
在4~5月期間,Intel開始更新處理器的 勘誤文件 ,現在我們終於知道其中內情,Skylake和Kaby Lake處理器的微代碼(microcode)存在BUG。所謂微代碼是處理器的一種更新特性, 通過從Intel的站點下載微代碼,加載到處理器核中,對一些BUG進行勘誤 。微代碼是包含處理器的微指令(Microinstructions)的數據塊。
原來,上周末,著名Linux發行版Debian發布 警示文章 , 稱該BUG涉及Intel Skylake/Kaby Lake處理器(包括桌麵、HEDT、嵌入式移動平台)以及Xeon V5/V6甚至還有奔騰。
症狀是, 同步多線程開啟下會造成一些高危的係統行為。包括應用異常、數據丟失、數據處理超負荷等。
Intel官方的描述是,某些複雜條件下,處理小於64指令(如AH、BH、CH、DH寄存器)的短循環,會造成係統失控。但是,該情況出現僅限同步多線程啟用時才有,也就是發生在一個物理線程承載兩個邏輯線程時。
發現者Mark Shinwell是在Deibian上使用OCamlL編譯器時發現的。
修複方式:
Kaby Lake —向主板或OEM廠商索要最新的BIOS/UEFI更新;同時關閉同步多線程
Skylake ——shell命令“grep -E 'model|stepping' /proc/cpuinfo | sort -u”,如果輸出結果有78/94,且步進為3,請更新7月17日的新係統,該內核(20170511)打包了最新microcode;如果輸出結果非上述所顯,請關閉同步多線程,直到BIOS/UEFI更新。