Portál AbcLinuxu, 1. května 2025 19:31

Jaderné noviny – 1. 11. 2012: Poškozování dat v ext4

19. 11. 2012 | Luboš Doležel
Články - Jaderné noviny – 1. 11. 2012: Poškozování dat v ext4  

Aktuální verze jádra: 3.7-rc3. Citáty týdne: Linus Torvalds, Andrew Morton, bugzilla@kernel.org. Kroah-Hartman: hledá se výpomoc. Airlie: ovladače pro Rapsberry Pi jsou k ničemu. Zamyšlení nad panikou kolem ext4.

Obsah

Aktuální verze jádra: 3.7-rc3

link

Aktuální vývojová verze jádra je 3.7-rc3 vydaná 28. října. Linus poukazuje na to, že jde povětšnou o spousty drobných změn na mnoha místech. Ale nalezl problém, který ho znepokojuje: A když už jsme u seznamu změn: sakra lidi, někteří z vás si budou muset změnit jména. Na to, že tu je vícero Davidů, Petrů apod. jsem si zvyknul, ale jen v tomhle rc jsou tři různí Linusové. Pánové, chci se cítit jako jedinečná hvězda, ne jako neznámý člověk v davu.

Stabilní aktualizace: verze 3.0.49, 3.4.16 a 3.6.4 vyšly 28. října; 31. října je následovaly verze 3.0.50, 3.2.33, 3.4.17 a 3.6.5. Všechny obsahují důležité opravy. Za povšimnutí stojí to, že verze 3.6.5 standardně zakazuje bezpečnostní omezení symbolických a pevných odkazů přidaných během začleňovacího okna 3.6 jako odpověď na jinou nahlášenou regresi.

Citáty týdne: Linus Torvalds, Andrew Morton, bugzilla@kernel.org

link

Ještě jeden IT pisálek se mě zeptá, jestli chci tak malé fonty, tak ho nejdřív ulovím a pak dostane zářez, že to nepamatuje.

-- Linus Torvalds

Náhlé ukončení skenování VM za určitou magickou hranicí je docela hrubé, lepší je něco složitého, postupného, co se bude vždycky chovat špatně, akorát záhadněji ;-)

-- Andrew Morton

Dokud bugy nevyřešíte, tak tuto zprávu budete dostávat každý den!

-- bugzilla@kernel.org si těžko hledá kamarády

Kroah-Hartman: hledá se výpomoc

link

Greg Kroah-Hartman hledá někoho, kdo mu pomůže vytvářet stabilní jádra. Hledám někoho, kdo mi pomůže v procesu vydávání stabilních jader. Aktuálně se topím ve stromech a patchích a hodil by se mi někdo, kdo by dělal kontroly vydání, která vytvářím.

Airlie: ovladače pro Rapsberry Pi jsou k ničemu

link

Správce grafického subsystému Dave Airlie není potěšen vydáním ovldačů pro Rapsberry Pi. Co je na tom špatného? Nemůžete jejich implementaci GLES nijak vylepšovat, nemůžete přidat nová rozšíření, nemůžete opravit žádné chyby, nedá se s tím dělat nic. Nemůžete pro to napsat ovladač pro Mesa/Gallium. Jednoduše to nejde.

Zamyšlení nad panikou kolem ext4

link

Během několika dnů se hlášení na mailing listu týkající se poškození souborového systému ext4 stalo rozšířeným tématem zpráv; kvalita ext4 a jeho údržby byla zpochybněna. Jakmile se emoce uklidnily, ukázalo se, že problém nebyl tak vážný, jak se zdálo; daná chyba měla dopad na jen velmi malou skupinu uživatelů s neobvyklými volbami pro připojení. V době psaní tohoto textu se oprava testuje a měla by se brzy dostat do hlavní řady a stabilních jader. Bug byl podivný, ale je zajímavé se podívat na to, jak vznikl a jaký rozruch způsobil.

Přehled dění

link

23. října se uživatel „Nix“ pokoušel vystopovat pád lock manageru NFS, když narazil na problém: pád neustále poškozoval jeho souborový systém, což mu ladění ještě více komplikovalo. Nahlásil problém na mailing listu linux-kernel a varoval čtenáře LWN. Vývojáři ext4 šli hned hledat problém a po pár hodinách už měli hypotézu. Ta byla bohužel mylná.

Než ale toto vyšlo najevo, všude možně po Internetu už vyšly články o tomto problému. LWN nebylo první, ale 24. už na LWN vyšel článek také. Rychle se ukázalo, že původní hypotéza měla mezery, takže se pokračovalo ve vyšetřování. To nakonec trvalo několik dnů.

Eric Sandeen nakonec dohledal původ chyby v tomto commitu, který se dostal do jádra ve verzi 3.4. Tato změna měla být jen pročištěním, které přemisťuje logiku alokace inodů do jediné funkce a odstraňuje duplicity. Bohužel to způsobuje i to, že dochází k úpravě bitmapy inodů mimo transakci, což má za následek zápis dat do žurnálu bez výpočtu kontrolního součtu. Pokud v tento moment systém havaroval, tak byly při příštím připojování odhaleny chyby v kontrolních součtech a žurnál nebyl přehrán; souborový systém byl vnímán jako poškozený.

Zajímavé je to, že na většině systémů by k problému nikdy nedošlo, protože na nich se kontrolní součty žurnálu nepoužívají. Jde o volitelnou funkci, která není standardně zapnutá a zjevně se moc nepoužívá. Nix tuto funkci nějak nechtěně zapnul; většina lidí ji nezapíná, i když třeba ví, že existuje. Kdokoliv, kdo má tuto funkci vypnutou, nebude touto chybou postižen, takže jen malá skupina uživatelů ext4 má důvod mít z poškození dat obavy.

Zajímavé je také to, že kontrolní součty v žurnálu jsou poněkud problematickou funkcí; jak je z diskuze z roku 2008 jasné, tak není uplně jednoznačné, co by se mělo dělat, když kontrolní součet nesouhlasí. Kontrolní součet v žurnálu není údajem, na který může systém rozumně reagovat; může dokonce vést k problémům sám o sobě.

Ericův patch zjevně problém řeší – poškození, ke kterým bez něj docházelo, jsou pryč. Pochopitelně před začleněním do jádra dojde na revidování – nikdo nechce způsobit další problémy kvůli zbytečnému spěchu – ale vydání jádra s opravou by měla být brzy k dispozici. Většině uživatelů to ale bude jedno, protože nebyli problémem vůbec postiženi. Je budou spíše zajímat plány na vylepšování testovacích sad pro souborové systémy, aby podobné regrese byly v budoucnu snáze odhaleny.

Analýza

link

Ze současného pohledu se dá říci, že pozornost věnovaná problému v médiích neodpovídala skutečnému dopadu chyby. Dalo by se to přiřknout snaze o senzaci, která přitáhne čtenáře. Ale jsou tu i další faktory, které je třeba mít na paměti, než budeme někoho soudit:

Vývojáře ext4 jistě nelze vinit z toho, co se kolem této chyby rozpoutalo. Udělali to, co správný zodpovědný vývojář udělá: odložili vše, na čem dělali, a soustřeďovali se na to, co vypadalo jako závažná regrese. Mohli rozsah paniky trochu ovlivnit tím, že by o problému diskutovali neveřejně, ale takto komunita nefunguje.

Závažnějším tématem je přidávání nových funkcí do ext4. Ext4 je vnímáno jako stabilní systém souborů vhodný k produkčnímu nasazení; právě ext4 máme používat, než Btrfs dozraje. Proto se můžeme setkat s odporem proti přidávání nových funkcí, zejména když nemají moc využití nebo nemusejí fungovat dobře s těmi stávajícími. A byli to nakonec i vývojáři systémů souborů, kteří vyjádřili podobné obavy.

Než ale začneme kvůli tomuto zoufat, je vhodné si připomenou několik faktů. Tento systém souborů je rozsáhle používán ve spoustě různých situací, takže je pravděpodobné, že všechny problémy budou rychle odhaleny. Problémy, které se dotkly skutečných uživatelů, jsou zcela vzácné a dokonce i v tomto případě by se jejich počet dal snadno spočítat na prstech. Ext4 je dlouhodobě velmi stabilní a jeho vývojáři jsou odhodlaní nedopustit, aby se na tom něco změnilo.

Odkazy a zdroje

Kernel coverage at LWN.net: November 1, 2012

Další články z této rubriky

Jaderné noviny – přehled za březen 2025
Jaderné noviny – přehled za únor 2025
Jaderné noviny – přehled za leden 2025
Jaderné noviny – přehled za prosinec 2024
Jaderné noviny – přehled za listopad 2024

Diskuse k tomuto článku

19.11.2012 00:46 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
Rozbalit Rozbalit vše Errata
Odpovědět | Sbalit | Link | Blokovat | Admin
Kdokoliv, kdo má tuto funkci zapnutou, nebude touto chybou postižen
IMHO vypnutou (ale možná je jen už moc pozdě večer).
Intel meltdown a = arr[x[0]&1]; karma | 帮帮我,我被锁在中国房
19.11.2012 02:59 Lenka
Rozbalit Rozbalit vše Re: Errata
Taky se mi zda ze by tam melo byt vypnutou...
19.11.2012 07:27 Pev | skóre: 28
Rozbalit Rozbalit vše Re: Errata
Jo :-) (Anybody who has journal checksums turned off will not be affected by this bug).
Luboš Doležel (Doli) avatar 19.11.2012 10:44 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: Errata
Rozhodně :-) Díky.
19.11.2012 02:57 Ovocníček
Rozbalit Rozbalit vše Re: Jaderné noviny – 1. 11. 2012: Poškozování dat v ext4
Odpovědět | Sbalit | Link | Blokovat | Admin
Ona to není je honba za senzací. Hrozba nečekané ztráty dat je jednoduše velkým strašákem, a když se ze začátku nevědělo, jak moc vzácná ta chyba je, tak se nelze divit, že se o tom hodně mluví.
D.A.Tiger avatar 19.11.2012 08:54 D.A.Tiger | skóre: 8 | Brno
Rozbalit Rozbalit vše Re: Jaderné noviny – 1. 11. 2012: Poškozování dat v ext4
Já mám takový dojem, že se už od začátku psalo, že na to aby se chyba projevila, je potřeba rychlý, opakovaný remount disku. Což samo o sobě podle mě poměrně dost zužovalo okruh uživatelů které by to mohlo postihnout....
Radost z toho, že někdo objeví něco nového, je omyl starý 6000 let... (Jean Paul) | anthill inside
19.11.2012 16:17 2X4B-523P | skóre: 38 | blog: Zelezo_vs_Debian
Rozbalit Rozbalit vše Re: Jaderné noviny – 1. 11. 2012: Poškozování dat v ext4
je dost možné, že to postihlo můj notebook,ale mohla to být i jiná chyba, občas zapomenu, že v něm nemám baterii a vytrhnu adaptér...
19.11.2012 09:47 migrena
Rozbalit Rozbalit vše Re: Jaderné noviny – 1. 11. 2012: Poškozování dat v ext4
Odpovědět | Sbalit | Link | Blokovat | Admin
Neviem, či je to práve tento problém, ale pri používaní Mint 13 som mal podozrenie a pri Xubuntu 12.04 už istotu, že mi miznú (celé) súbory a vždy po reštarte (presné okolnosti si už nepamätám).

Prešiel som na Linux Manjaro a tento problém som už ezaznamenal, rovnako ani na Fedore 17, ktorú používam v súčasnosti.

Hovorím ale, že už nemám ako spätne zistiť, či to bol tento problém.
19.11.2012 13:25 Andrej | skóre: 9
Rozbalit Rozbalit vše Re: Jaderné noviny – 1. 11. 2012: Poškozování dat v ext4
Odpovědět | Sbalit | Link | Blokovat | Admin
pak dostane zářez?
Any sufficiently advanced magic is indistinguishable from technology. --Larry Niven
Luboš Doležel (Doli) avatar 19.11.2012 13:39 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: Jaderné noviny – 1. 11. 2012: Poškozování dat v ext4
Jiný překlad pro wedgie mě nenapadá.
19.11.2012 14:29 w0ndr
Rozbalit Rozbalit vše Re: Jaderné noviny – 1. 11. 2012: Poškozování dat v ext4
To je myslim bezne pouzivany vyraz pro wedgie
19.11.2012 18:26 jehovista
Rozbalit Rozbalit vše Re: Jaderné noviny – 1. 11. 2012: Poškozování dat v ext4
"bezne pouzivany"

To muselo byt hodne vesele detstvi.
19.11.2012 19:52 ::: | skóre: 14 | blog: e_lama
Rozbalit Rozbalit vše Re: Jaderné noviny – 1. 11. 2012: Poškozování dat v ext4
wedgie muze vzniknout i samo od sebe, bez pricineni nejaky dalsi osoby ;-)

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.