На протяжении мая и июня Intel обновила документацию на собственные важные модификации микропроцессоров, и в ней вышло описание доныне неизвестной ошибки, которая отыскалась у большинства представителей родов Skylake и Kaby Lake. Все микропроцессоры этих поколений, направленные на десктопные ПК, на платформу HEDT, мобильные и вделываемые использования, и серверные микропроцессоры Xeon v5 и v6, были подвергаются неприятности, проявляющейся в «небезопасном и непредвиденном действии в случае включённой технологии Hyper-Threading». Такое описание данной погрешности дали создатели ОС Debian, которым удалось обнаружить критерии, когда баг выражается на деле.
В посланном пользователям предостережении создатели просят обладателей ПК на основе микропроцессоров с микроархитектурой Skylake и Kaby Lake незамедлительно выключить Hyper-Threading в BIOS либо UEFI, так как иначе их могут поджидать «нарушения в ожидаемом действии дополнений и ОС, искривление данных и их утрата». В послании об погрешности при этом подчёркивается, что неприятность касается не только лишь Debian либо Linux, быть может выражаться в любых ОС, включая и Microsoft.
В документации Intel ошибка изображена так: «в трудных микроархитектурных состояниях длинные циклы из менее чем 64 инструкций, применяющих процессорные регистры AH, BH, CH либо DH совместно с аналогичными им обширными регистрами (к примеру, RAX, EAX либо AX для AH), могут вызывать непредвиденное действие микропроцессора. Такая патология отмечается лишь если функциональны оба логичных микропроцессора одного физического микропроцессора».
Впрочем и представляется, что изображенные критерии не должны появляться часто, в Debian-сообществе отыскались и настоящие потерпевшие. К примеру, первым ещё в самом начале 2014 г неприятность увидел один из творцов инвентаря OCaml, столкнувшийся со необычным действием компилятора. Но разобраться и ограничивать оплошность удалось только к концу июня, когда её описание вышло в интеловской документации.
То, что Intel объявил существование неприятности, обозначает, что скоро она обязана быть ликвидирована через обновления микрокода. В настоящее время известия о присутствии бага есть в документации на все микропроцессоры Core шестого поколения (Skylake), Core 7-го поколения (Kaby Lake), Xeon v5, Xeon v6, и в документации на свежие микропроцессоры Core X шестого поколения (Skylake-X). Микрокод с корректировкой ошибки в настоящее время произведен Intel только для микропроцессоров Skylake, он имеет номер модификаций 0xB9, 0xBA или более ранний. Также, в свежих микропроцессорах Kaby Lake-X ошибка исправлена первоначально в степпинге ядра B0. Для других потерпевших CPU изменение пока лишь предполагается. Конечные клиенты обретут нужную заплату через обновления BIOS исходных плат.
Напоминаем, что выявленная ошибка – далеко не первая беда такого характера, потрясшая микроархитектуру Skylake. В самом начале минувшего года в ней была выявлена ещё одна критическая для конечных клиентов неприятность, из-за которой закреплялись зависания и перебои микропроцессора под повышенной перегрузкой. Тогда она также была быстро исправлена через обновления микрокода.