Bohužel, ta chyba je v procesorech tak dlouho, že soudu patrně uznají, že nebyla zaviněná, nikdo o ní nevěděl. Takže je to spíš vlastnost, než chyba.
Podobně, nemůžete po výrobci automobilu žádat náhradu za to, že před 2 lety dosahoval v NCAP pěti hvězdiček, ale dnes už by nedosáhl ani na tři.
Musíte rozlišovat mezi přirozeným vývojem (a ten se děje i na poli bezpečnosti) a mezi chybami.
Chyba je rozpor výrobku s jeho specifikací, nebo očekavatelnými vlastnostmi. Pokud je chyba v procesoru 20 let, patrně to není rozpor ani se specifikací, ani s očekáváním.
Spravedlnost a právo není totéž.
Pokud se citelně změní parametry výrobku - resp. se stane nepoužitelný? Je to úplně stejný problém jakou má Apple. Použil špatné baterie, a místo, aby to řešil jejich výměnou, snažil se na úkor uživatele.
Takový propad výkonu je nepřijatelný. Nejde o odškodné, jde o uvedení do funkčního stavu. Jak to Intel udělá a kolik ho to bude stát, je jeho problém.
Použil špatné baterie? Možná jsem něco minul, ale měl jsem pocit, že použil úplně normální baterie, které úplně normálně degradují jako všechny ostatní baterie. A stejně jako všude jinde se jim občas ty mobily pak vypínají s 50% nabitou baterkou, tak udělali patch, který to zpomalí, aby se to chovat uživatelsky příjemněji.
Chápu to špatně?
Špatně to nechápete. Ale jde o to, jestli:
a) Apple o problému věděl už od začátku, ale z marketingových důvodů jej ignoroval,
b) o problému nevěděl, protože zanedbal testování (CPU vs. proud vs. schopnosti odstárlé baterie),
c) o problému nevěděl, i přes to, že provedl veškeré testování tak, jak velel tehdejší stupeň poznání.
Podle toho se liší míra odpovědnosti (míra zavinění) toho stavu.
Vypadá to, že ano, s pády telefonů už má v souvislosti s bateriemi nějakou dobu problémy (i když byli nové), vypadá to, že jsou nuceni jít se spotřebou stále níž, aby to udrželi bezpečně živé - skutečný problém je totiž zřejmě není ve vysokém vnitřním odporu opotřebené baterie, ale v jejím nebezpečném přehřívám v případě některých kusů už někde kolem specifikovaného odběru. Tento problém se zřejmě se stářím baterie stupňuje.
2andy: Pouzili normalni baterie, ktere ale nejsou kompatabilni s dalsim HW - jednoduse nejsou schopne po dobu sve zivotnosti (tzn pri 50% kapacity) ten HW uzivit, coz je jednoznacne chyba navrhu. Sekundarni vec je ta, ze pokud ta kapacita poklesne pod tech 50%, melo by dotycny zarizeni uzivatele upozornit, ze je treba ji vymenit a teprve pak pripadne podniknoutnejaka dalsi opatreni, ktera mohou fungovat jako bonus, ze i pri horsi baterce to porad jeste sice blbe, ale funguje.
Ono by samozrejme marketingove blbe vypadalo, kdyby ajfoun upozornoval na opotrebenou baterku po roce pouzivani ... proto se pokusili ten pruser zamaskovat a ututlat.
No když se mi ojedou zimní pneumatiky, tak mám možnost nejezdit v zimě, nebo mě to s určitou pravděpodobností zabije. Taky by to bylo řešenou svolávací akcí a opravou na náklady výrobce?
Souhlasím, že by bylo mnohem lepší upozornit uživatele, "vaše baterka je stará, zpomalujeme, aby se vám to vypínalo, kdyžtak si to vyměňte"... ale to je fakt takový průšvih?
"Jasne, takze pokud si nekdo minulej tejden koupil auto s tim ze ma 150kW, a dneska (nebo za tejden) bude mit jen 80kW, tak za to vyrobce vlastne vubec nemuze."
Jaký za týden? Když za několik let bude mít to auto 80kW, protože bude potřeba vyměnit rozvody, což je naprosto standardní servisní záležitost, tak za to taky může výrobce?
2andy: Ty ses taky trotl ze? Negramotnej a blbej k tomu. Minulej tejden sem si koupil CPU, o zadny chybe nikdo nikde nepsal, mel nejakej vykon. Pristi tejden vyjde patch, kterej mi vykon snizi o 30%. Aby resil nejakou chybu vyrobce. Sorry, ale v tom pripade jdu do kramu ten procak i to auto vratit, at teda navalej prachy protoze tohle sem si nekoupil.
Coz samozrejme uberdebilove tvy kategorie nemuzou pochopit.
Mimochodem ty trotle, vis proc vyplacel VW miliardy zakaznikum?
Tento týden jsem si koupil CPU, Windows mi na tom běží nějak rychle.
Zítra Windows zaktualizují a poběží pomaleji. Budou sice bezpečnější, nebo umět nějakou funkci navíc, ale budou pomalejší.
To nemůžu reklamovat u výrobce CPU.
To CPU běží stejně rychle, pokud se spokojíte s úrovní funkcí a zabezpečení, jako Vám stačilo posledních 20 let. Chcete něco nového? Pak to možná bude stát kus výkonu.
A aby se dalsi blb Silhavej nepridal. Ne to CPU nebezi stejne rychle, protoze dojde k tomu ze efektivne prestane existovat jeho cache. Navic vyrobce se uz i priznal k tomu, ze je to chyba na jejich strane, a jakykoli SW reseni NENI oprava ale pouze obchazeni problemu.
Je to presne stejny, jako kdyby vyrobce auta nechal aktualizovat ridici SW tak, ze motor nebude pouzivat turbo, protoze neumi zaridit, aby se to turbo neroztrhlo a tim potencielne nekoho nezabilo.
"Je to presne stejny, jako kdyby vyrobce auta nechal aktualizovat ridici SW tak, ze motor nebude pouzivat turbo, protoze neumi zaridit, aby se to turbo neroztrhlo a tim potencielne nekoho nezabilo."
Není. Je to na té úrovni, že ti výrobce zámků prodá nějaký normální zámek a v nějakém momentě někdo objeví metodu "bumping" a zjistí, že ten zámek se tím dá otevřít. Kolik výrobců zámků bylo za tohle žalováno? A v tomhle má OS výhodu, že se dá aspoň patchovat, takže pak to otevření sice trvá 30s, ale bumpingem to pak otevřit nejde (aspoň ne tak jednoduše).
Zatím to vypadá, že se to týká se to jen Intelu, na AMD žádný propad výkonu nebude, patch vypínající KAISER na AMD už byl začleněn do kernelu: https://github.com/torvalds/linux/blob/master/arch/x86/kernel/cpu/common.c#L926
zatím je brzy říci, koho všeho se to týká, AMD se k tomu vyjádřila a tenhle způsob zneužití defacto vyloučila. Potenciálně je možné zneužít všechny procesory s out of order instrukcemi, vtipné je, že daná zranitelnost je poměrně nápaditá a teoreticky bude existovat třeba ještě několik nových scénářů.
Pokud vim kde to je a pokud je ten blok staticky tak je to rychle, pokud se mi data meni po rukou je to pomale. Principialni problem vidim pouze v tom, ze existuje realne moznost ziskat citlive udaje. Jina otazka je jaka je pravdepodobnost. Pokud budou data dlouho staticky na stejne adrese mam problem, nebot i pomalym vycitanim si to postupne stahnu. Pokud se mi data prubezne meni po rukou, to co ziskam muze byt pouze vystup ze skartovacky. Tj zmet utrzku informaci. A vzhledem k tomu, ze toto nejde predem vedet, kde jsk kdo co naprogramoval, se toho bojime.
Prohledavanej prostor muzes vyznamne redukovat ... treba tak, ze se podivas jaky aplikace bezej, a z toho uz si vyberes ty, ktery te zajimaj, a udaje kery te zajimaj zcela jiste nejsou v ramce (alokovany tim procesem) umisteny nahodne (teda minimalne v 90+%), takze ti staci ziskat vetsi ci mensi cast prave tehle dat. Spis bych rek, ze u drtivy vetsiny aplikaci najdes zadany udaje vzdy na stejnym offsetu.
A neprijde mi jako idealni reseni si pro ulozeni hesla alokovat GB ram a ulozit ho na random offset jen proto, abych zdrzel pripadnyho hledace ...
Nevím, co plánuje MS, ale soudruzi z Redmondu píšou, že oprava vyžaduje nový microcode desktop OS, server OS, takže jsou asi ty jejich patche většině lidí úplně k hovnu.
Jistě. Pro většinu MB vydá výrobce asi tak 1-2 opravy BIOSu během prvního půlroku, co je výrobek v prodeji, pokud je dobře naladěn a nejedná se o totální low-end, pak vám akorát poradí, ať si koupíte novější hardware. OS ho nalít může, akorát ten OS, co má většina lidí, žádnou takovou funkci nikdy neměl a ani nadále nemá. Máňa s Pepou z Dolní Lhoty budou určitě brousit po webech VMwaru, aby si k tomu stáhla third-party utilitu, protože si soudruzi z Redmondu zapomněli vytáhnout hlavu z (_!_).
Ne, já primárně kritizuju MS, že jejich oprava je zjevně většině uživatelů jejich OS zcela k ničemu, protože aby k něčemu byla, tak by nesměla jaksi záviset na aktualizaci BIOSu, kterou naprostá většina uživatelů nikdy v životě neprovede (a ani se o ní nedozví i v případě, že snad existuje).
Ale má. Např.: https://support.microsoft.com/en-us/help/3064209/june-2015-intel-cpu-microcode-update-for-windows
Ale pokud chcete, update biosu s novým modulem microcode (až bude k dispozici) klidně udělám. Není to problém. Fakturu za mé služby pak můžete poslat Intelu.
Patrně jste špatně četl, microcode update existuje právě proto, aby jej bylo možno aplikovat bez update BIOSU. Při studeném startu se natáhne během bootu do procesoru.
Hezky to má popsané Debian: https://wiki.debian.org/Microcode
"Processor microcode is akin to processor firmware. The kernel is able to update the processor's firmware without the need to update it via a BIOS update. A microcode update is kept in volatile memory, thus the BIOS/UEFI or kernel updates the microcode during every boot."
Aby bylo jasno. Mikrokód v BIOSu slouží jen k informaci desky, jaké parametry mu má nastavit, případně opraví chybu, kvůli které by se s deskou vůbec nerozběhnul. Případně může pro něho upravit časování RAM. Tečka.
A mikrokód dodávaný výrobcem procesoru všem výrobcům operačních systémů se průběžně mění a opravuje/vylepšuje vlastnosti nebo chyby CPU. A opravdu se nahrává do CPU při startu operačního systému. Tečka.
Pokud vim, tak microcode v bios modulu je ten samy, ktery se nahrava i z OSu. Intel nema zadne odlisne mikrokody zvlast pro vyrobce desek a zvlasto pro OS. Samo nahrati mikrokodu do CPU je otazka zapisu bloku dat do pameti a zapisu par MSR a je technicky uplne jedno, jetli to provede BIOS nebo OS. Rozdil je v tom, ze update BIOSu jsou dost ojedinele, zatimco pres OS to je aktualizovat jakmile intel vyda nove mikrokody bez cekani na novy BIOS...
Prví věta je nesmysl z odborného hlediska i logického. Proč nahrávat to samé z OS, když už je to z BIOS.
Druhá věta je zase nesmysl, protože nikde nepíšu, že mikrokód je odlišný pro výrobce desek a OS. Když později dodá aktualizovaný mikrokód do OS tak obsahově určitě není odlišný od toho starého v BIOSu?
No a pak dál to máš dobře.
Já se ti nebudu plést do platebních řešení pro silniční mobilitu a ty v pracovní době do fungování počítačového hardware, ano?
Asi jsem to napsal trochu zmatene. Mikrokody pro dane CPUID vydavane vyrobcem CPU se lisi patch ID a dokonce nekdy i velikosti. Pokud vyrobce zakladni desky aktualizuje BIOS nejnovejsim dostupnym mikrokodem od vyrobce CPU (a aktualizuje si ten BIOS i uzivatel na sve desce), tak nema smysl ten samy mikrokod nahravat znovu z OSu. Na tom se asi shodnem. Z hlediska uzivatele je samozrejme jednodussi, kdyz se mu o to postara OS a on nemusi nic flashovat. Ano, jsou i pripady, kdy by se bez microcode update nedokoncil POST nebo nenabehl OS, tak pak je nutne nahrat microcode update uz z BIOSu. Pokud provozuju nejaky OS, ktery mechanismus nahravani microcode update neimplementuje nebo uz nema updaty, tak se take hodi ho mit v BIOSu...
A jestli muzu poprosit nejake vysvetleni k "Mikrokód v BIOSu slouží jen k informaci desky, jaké parametry mu má nastavit"
O jake parametry se jedna? Parsuje snad nejak BIOS zasifrovany mikrokod (vyjma nesifrovane hlavicky)? Ja bych rekl, ze BIOSu staci infomace vyctena z CPUIDu, jak ma co nastavit a podle toho CPUIDu taky zavede odpovidajici microcode. A upravu casovani myslim resi dalsi inteli binarni blob (MINIT).
Tesi me, ze si navstivil stranku nasi spolecnosti a ze mas takovou peci o mou pracovni dobu, kdyztak linkni vasi firmu at si rozsirim obzor :)
Celá TLB cache se neinvaliduje, dělá se PCID TLB optimalizace, ale stejně je to houby platné, snížení výkonu je i tak znatelné. Dovolím si citovat wikipedii:
The overhead was measured to be 0.28% according to KAISER's original authors; a Linux developer measured it to be roughly 5% for most workloads and up to 30% in some cases, even with the PCID optimization; for database engine PostgreSQL the impact on read-only tests on an Intel Skylake processor was 7-17% (or 16-23% without PCID), while a full benchmark lost 13-19% (Coffee Lake vs. Broadwell-E). Redis slowed by 6-7%.
"More recent Intel processors from the Haswell (4th-gen) era onward have a technology called PCID (Process-Context Identifiers)"
https://www.pcworld.com/article/3245606/security/intel-x86-cpu-kernel-bug-faq-how-it-affects-pc-mac.html
Zkus zapnout mozek.
Toto je chyba hardwarová. Co a jak půjde fyzicky do cache TLB určuje na té nejnižší úrovni hardwar procesoru.
Chyba byla nahlášena Gůglem v červenci?
takže za půl roku:
a) Intel na to nehrábl a čekal na zázrak.
b) zkusil tuto chybu opravit mikrokódem, který by v tichosti propašoval pomocí OS do procesoru.
c) všechny pokusy s mikrokódem selhaly a zůstala jediná možnost, jak zmírnit klubající se skandál, mazat celou cache z té nejvyšší úrovně a to instrukcí OS požadujícího obecně vyprázdnit tuto cache.
d) nejde to opravit softwarově žádným způsobem a výmaz celé cache je jediný možný.
V tomto okamžiku bych také radši volil prasárnu pokaždé vyprázdnit cache než neudělat nic.
Třeba je to řešení dočasné a třeba to lze vyřešit opravou mikrokódem. Ale chce to čas, protože možná je potřeba vrtat nejen do TLB a řídících obvodů, ale ještě do něčeho na druhém konci procesoru. A to chce čas a pořádně otestovat. Hodně času, který nemají. V tomto případě zas mají volbu buď mizerně fungující procesor nebo možnost, že chyba v mikrokódu zrakví celý CPU.
Možná každá generace potřebuje jiné úpravy mikrokódu.
A kdyby přestala fungovat celá produkce Intelu za posledních pár let, tak Krzanič skončí na pracáku.
ještě bych přidal
e) když už víme, že to je úplně v hajzlu tak rychle prodáme akcie https://www.cnbc.com/2018/01/04/intel-ceo-reportedly-sold-shares-after-the-company-already-knew-about-massive-security-flaws.html
už tady ve zprávičce se objevila informace o patchi pro variantu 2 (branch target injection) https://www.root.cz/zpravicky/patche-kernelu-a-gcc-opravuji-spectre-a-meltdown/, která zrovna u hasswelu je ta kritická a vážně zneužitelná, patch má minimální dopad na výkon.