Vypadá to, že Intel bude mít možná na krku další chybu v procesoru. Tentokrát nicméně nemluvíme o bezpečnostních zranitelnostech ze skupiny spekulativních či „timing“ útoků, které jsou spíše výsledkem architektury, nenavržené s ohledem na izolaci proti nim. Nejde o skutečné „bugy“ v logice čipu.
Taková logická chyba byla ale možná nyní nalezena v procesorech Ice Lake, kde má způsobovat pády programu nebo celého počítače/systému při běhu (naštěstí relativně nepočetných aplikací.
Pády a restarty MacBooků ve vývojářských prostředích
Potenciální hardwarový problém v procesorech Ice Lake se vynořil ve vývojářském prostředí IntelliJ IDEA 2020.1 používajícím Javu. To je mimochodem produktem v ČR sídlící a původně založené firmy JetBrains s. r.o. (dříve IntelliJ Software s. r.o.). Kromě samotného IDEA 2020 snad stejné problémy má i PHPStorm a PyCharm, což jsou zase IDE pro PHP a Python od stejné firmy. Problém hlásí uživatelé notebooků Apple s těmito procesory, nicméně po nějaké době se ukázalo, že chyba zřejmě nemusí být v MacOS.
Program IntelliJ IDEA s tímto procesorem, buď sám spadne, což se může stát, i když pracuje na pozadí bez interakce uživatele, zejména při indexování projektu. V některých případech ale chyba vezme sebou celý operační systém a notebook se sám restartuje, což indikuje hlubší problém mimo samotnou uživatelskou aplikaci.
Později byla chyba nahlášená i při běhu v Linuxu, virtualizovaném v Parallels nad MacOS, kdy chyba postihnuvší aplikací v hostovaném systému způsobila i skrz hypervizor pád a restart celého počítače, což by nemělo při virtualizaci nastat. Jde i o potenciální problém architektury, který by v serveru byl bezpečnostní zranitelností (možnost DoS útoku).
Indikátor pro to, že jde možná o průšvih procesoru samotného, by mohlo být, že se zřejmě chyba objevila i na Windows a zařízení Surface Pro od Microsoftu, které má také procesor Ice Lake (ovšem tam jde zatím jen o jedno hlášení, což může být i omyl).
Včera se už také ve vláknu k této chybě přihlásil zaměstnanec Intelu a potvrdil, že chyba v IntelliJ IDEA už je společností analyzována. Zatím ovšem bez toho, zda se už podařilo příčinu izolovat a ví se, jestli spočívá v chybě procesoru nebo platformy.
Hardwarová příčina ještě není plně potvrzená
Nemusí jít nutně o chybu v jádru CPU nebo podobný závažný problém architektury. Poměrně časté bývají různé problémy a omezení v integrovaných GPU, přičemž v případě Ice Lake se ví o některých slabých místech v iGPU, které dokážou systém sesypat.
Takové problémy pak normálně ošetří ovladač GPU a pro koncového uživatele po jejich obejití hardware bude fungovat bezproblémově. Je možné, že IDEA/Java ve skutečnosti naráží na podobný bug v integrovaném GPU, ne v CPU. Stejně tak může Intel mít chybu třeba jen ve firmwaru či mikrokódu.
Chyba bude pravděpodobně opravena aktualizací mikrokódu (pokud to nebude jen na opravu BIOSů/ovladačů). V posledních letech se podobná errata daří tímto způsobem obvykle řešit bez toho, aby byla CPU výrazně zpomalená, takže uživatelé Ice Lake asi nemají důvod panikařit. Viz například problém Ryzenů 1000 projevující se při extrémní zátěži instrukcemi FMA, který byl opraven až po vydání, nebo podobnou chybu ve Skylake na začátku roku 2016.
Zatím bych tedy čekal, že případné erratum v Ice Lake bude podobné a jeho oprava nebude vyžadovat snížení výkonu (natož třeba stahování CPU z trhu). V tuto chvíli ovšem není jasné, jak dlouho bude trvat, než Intel opravu vyvine a dostane do distribuce. Po samotném nalezení totiž asi patch bude ještě třeba nějaký čas testovat, takže by se na opravu mohlo čekat třeba i měsíc až tři.