To musí být super mít v RAIDu disky, u kterých jsou selhání korelovaná.
Tak si pojďmě udělat test kritického myšlení. Zdrojové kódy firmwaru nemáme, tudíž vše zde nutně musí být do určité míry spekulace, pokud někdo neudělá reverse engineering toho firmwaru, ten jsem rozhodně neudělal a pochybuji, že ho udělal někdo z diskutujících.
Když máme jasno o čem se bavíme tak pojďme dál.
Máme disk SAS SSD - určení enterprise segment, tudíž nejvýnosnější část pro HP. HP by mělo mít nastavené procesy, aby takové scénáře měli být otestovány. Evidentně jim to, což moc důvěry v jejich procesy nedává, nejspíše už je vývoj dávno přeneseny za levnější pracovní silou. Dobrá, může se stát i když by se tedy rozhodně stávat nemělo.
Co přesně má firmware obsahovat? Má řídit a obsluhovat disk. Jaká funkcionalita může být tedy ve firmwaru obsažena, která za přesně daný čas ho znehodnotí a to tak, že data nelze obnovit? To znamená, že obsah všech buňěk je nejspíše přepsán nebo smazán a to nejspíše vícekrát. Jediná funkcionalita, která mě napadá, že by tohle mohla je nějaké bezpečné smazání, ale to není časově vázané. Nicméně takový firmware jsem ještě neviděl, což nevylučuje jeho existenci. Nicméně je to zvláštní.
Dále co mě zaráží, je to číslo samotné. Ta hodnota je přesně 2^15, což je hodnota `short int` v Cčku, v čem předpokládám, že ten firmware je napsaný. Fix tedy bude spočívat v tom, že tam dají `long long int`? A až pak ten disk bude k ničemu?
Tipnul bych si, že to přetečení způsobí zaseknutí firmwaru při startu disku. Zásek takový, že pak nejde ani přeflešnout nový firmware (standardní cestou).
Pochybuji, že by to prošlo všechny buňky a smazalo je to. Třeba je jenom velice komplikované ten nefunkční firmware bez poškození uložených dat opravit (např. je uložený ve stejných fleškách jako data) a pro HPE je jednodušší data prohlásit za finálně nedostupná, než se s tím mořit.
Celé HP (všechny dcery) jde docela rychle do háje. Stačí jejich geniální instalátor hplip https://sourceforge.net/p/hplip/news/2019/05/hplip-3195-release-notes/#1433 . Před chvílí jsem měl opět tu radost s nejnovější verzí, žádná změna.
> Tipnul bych si, že to přetečení způsobí zaseknutí firmwaru při startu disku. Zásek takový, že pak nejde ani přeflešnout > nový firmware (standardní cestou).
To se mě úplně nezdá, protože ta chyba je formulována:
"Neglecting to update to SSD Firmware Version HPD8 will result in drive failure and data loss at 32,768 hours of operation and require"
Jak to chápu je to tak, že se ten disk zasekne vždy po 32768 hodinách v provozu. T.j. budu mít disky v poli co poběží neustále a v tom běhu se zaseknou.
Mě přijde, že to přetečení přijde při sledování hodnoty "Power On Hours" nebo jiného běh sledujícího parametru. Nějak mě utíká souvislost, proč by tohle mělo znepřístupnit ten disk a celý ho poslat do věčných lovišť.
A asi ano bude jednodušší přinutit zákazníky rychle aktualizovat než-li to opravovat na vlastní náklady.
27. 11. 2019, 13:25 editováno autorem komentáře
Bohužel není uplně zřejmé, na co reagujete, možná na můj příspěvek o kontrole „stočení tachometru“.
Jestli to je výpočet z jiných dat – možná, ale moc mě nenapadá, z čeho by to šlo spočítat. Leda z času používání v jiných jednotkách. Pak by ale asi musel někdo ten typ explicitně přetypovat, jinak si to neumím moc představit.
Taky je otázka, jak to počítadlo hodin funguje – doba zapnutí přece není v celých hodinách. Zaokrouhluje se to? (Čekal bych zaokrouhlení nahoru – při načaté hodině se inkrementuje čítač.) Jak se řeší přepis této části paměti – přecejen zapisovat každou hodinu na stejné místo není zrovna šetrné… Uplatní se standardní wear leveling (hotový, ale pro danou situaci nepříliš efektivní), nebo nějaké řešení na míru situaci (možná hotové kvůli HDD*)
V neposlední řadě je otázka, jestli se ten znaménkový bit nepoužíval k nějakému účelu.
*) Popravdě nevím, kam ukládají HDD data ze SMARTu – jestl na plotny, nebo do nějaké flash paměti. Pokud do flash paměti, pak se nabízí přepoužití tohoto řešení i na SSD.
> Popravdě nevím, kam ukládají HDD data ze SMARTu
Starší disky ukládaly do EEPROM jejich MCU, ale moderní MCU epromku už většinou nemají. EEPROM je prostorově o dost náročnější než flash, dá se pomocí flashe emulovat, a tak s rostoucím tlakem na cenu jde pryč, protože zbytečně zvětšuje křemík. MCU se dělají o dost většími procesy (100-200 nm) než multimediální SoC.
Jsou to SLC flashe s ECC, výrobci garantují naprosto nesmyslné počty přepisů (a díky velikosti tranzistoru toho dosáhnou), takže inkrementace hodinového čítače to jen tak neoddělá :)
Nikdy se to ale nedává přímo na médium, to by pak SMART byl na dvě věci, když by třeba po selhání mechaniky nešel vyčíst.
> stačí, že by se ztratil např. sektor s údajem o počtu realokovaných sektorů :-)
No, v této chvíli už víte, že máte problém…
> a nebo rovnou jejich seznam.
OK, to už je horší. Myslel jsem, že toto SSDčka řeší přímo na úložišti pomocí nějakých chytrých algoritmů (více kopií dat + nějaký wear leveling) a nevěděl jsem přesně jak. Pokud na to mají kvalitnější (ale asi dražší) paměť, celé se to zjednodušuje.
Netušíme, jak vlastně vypadá ten vývojový proces. Po tom, co vyplulo na povrch u Boeingu, by mě nějaký outsource vůbec nepřekvapil... Jak jsem psal výše o tom instalátoru driveru HP - z toho čiší výtvor nějakého začátečníka, který prostě dostal rámcové zadání, vůbec neznal (a tedy neřešil) souvislosti a nikdo zkušenější to po něm nezkontroloval. Vůbec bych se nedivil, kdyby podobný postup proběhl i u toho firmwaru.
náhodou ten čas je logický
>tedy po přibližně 3 letech, 270 dnech a 8 hodinách běhu.
veď
Nová studie: SSD více likviduje čas než používání, SLC a MLC vydrží stejně
1. 3. 2016
Zhruba 30 až 80 % SSD má alespoň 1 vadný blok, u zhruba 2-7 % SSD selže alespoň 1 NAND flash čip během čtyř let od nasazení.
https://diit.cz/clanek/nova-studie-ssd-vice-likviduje-cas-nez-pouzivani-slc-mlc-vydrzi-stejne
Tie rozsahy sú podľa kvality NAND čipu a jeh výrobcu.
V RAID sa majú disky meniť po časti životnosti, aby sa za životnosť vzmenili všetky
napr. pri RAID 1 a životnosti 4 roky, mením striedavo 1. a 2. disk každé dva roky.
Pri 4 diskoch v RAID6 a životnosti 4 roky, mením striedavo 1.,2., 3. a 4. disk každý rok.
Problém je tá krátka plánovaná životnosť a počítatdlo tej životnosti..
len sa doplním. Od zverejnia štúdie uplynulo
From and including: Tuesday, March 1, 2016
To and including: Wednesday, November 27, 2019
Result: 1367 days
It is 1367 days from the start date to the end date, end date included.
Or 3 years, 8 months, 27 days including the end date.
https://www.timeanddate.com/date/durationresult.html?m1=03&d1=01&y1=2016&m2=11&d2=27&y2=2019&ti=on
alias 3 roky a 272 dní, ak v období nebol 29.2. -teda rok nebol prestupný, alebo 3 roky a 271 dní, ak tam taký deň bol...
teda 3 roky 270 dní a 8 hodín pravdepodobne súvisí s tou štúdiou a ochranou HP pred tým odídením NAND-ov