Odpoved na to dodnes neni zcela jasna.
Prijde mi, ze prevlada nazor, ze bud se to da fixovat microkodem nebo na urovni OS - nemusi byt oboje. Otazkou je porovnani dopadu na vykon pri pouziti jednoho nebo druheho fixu. A vypada to s dopadem na vykon hur v pripade microkodu, nez kdyz je pouzit fix na urovni jadra.
je potřeba oboje, jak microcode, který umožní přístup k IBRS (Indirect Branch Restricted Speculation) instrukcím, tak záplata OS, která bude IBRS instrukce používat
zmatek v tom ještě zvětšuje, že je možné Spectre v2 opravit bez IBRS pomocí Retpoline, tedy jen záplata OS, která má tu výhodu, že méně zpomaluje, ale zase nefunguje dobře na posledních modelech novějších než Skylake
nevím, jestli MS chystá něco jako Retpoline, spíš budou používat ten více zpomalovací IBRS s Intel microcode
Ano, jak říkám je to složité :) Tak ještě jednou: Spectre v2 jde opravit buď záplatu Retpoline, ke které není třeba microcode, ale zase je třeba podpora překladače. Anebo to jde opravit s větší výkonostní ztrátou pomocí IBRS záplaty, která vyžaduje nový microcode. Intel a Microsoft jdou tou druhou cestou. Linux tou první.
A co spectre 1?
~> cat /sys/devices/system/cpu/vulnerabilities/spectre_v2
Mitigation: Full AMD retpoline
~> cat /sys/devices/system/cpu/vulnerabilities/spectre_v1
Vulnerable
~> cat /sys/devices/system/cpu/vulnerabilities/meltdown
Not affected
linux .... 4.14.15-5.g9a6fca5-default #1 SMP PREEMPT Mon Jan 29 08:15:43 UTC 2018 (9a6fca5) x86_64 x86_64 x86_64 GNU/Linux
Pri tom, ze na spectre treba aj aj sa vychdaza y existencie z exitencie spectre c/ Spectre 3/ Spocetre 2a, posla autora.
My reasoning is along the lines of :
1- Meltdown : not applicable to AMD microarchitecture, reportedly.
2- Spectre : Reportedly, AMD are only affected marginally by one variant. HOWEVER :
2a- published analyses only seem to have considered recent, 64 bit capable, CPUs - including of course the statement by AMD.
As far as these older 32-bit only CPU are concerned, while, I guess, data /leak/ by spectre-type attacks is possible in theory also on these older processors, yet I guess that data /collection/ won't be feasible at least not thru the mechanisms the researchers discovered and published.
For instance, this CPU has no SSE2, hence no "Clflush timing" avenue for exploitation...
2b- As, anyway, /even/ for 64-bit CPUs there are no /real/ mitigations for Spectre in the vendors' "patches" and maybe no real mitigation possible at all,
2C- ... also, as an effective fix is said to in addition require /microcode updates/ - which will NOT work being famously broken hence disabled in the AMD-K7 series...
https://www.schneier.com/blog/archives/2018/01/spectre_and_mel_1.html
Tahle oprava ovšem není ve Windows Update, ale jen v Microsoft Update katalogu. Kdo má popsaný problém, může si ji nainstalovat ručně.
Takze abych shrnul clanek a hlavne diskuzi ..... nejlepsi je se o to nestarat (proste mit zaply windows update) a ono se to postara samo. Pokud bude potreba zmenit microcode, tak ho zmeni, pokud bude potreba zmena jadra, tak ho zmeni a uzivatel nemusi na nic sahat. Prijde mi, ze nejvetsi povyk je kvuli tomu, ze o tom vlastne nikdo nic nevi:)