FreeBSD 6 panic s FAT32
Dan Lukes
dan at obluda.cz
Sat Sep 10 10:36:00 CEST 2005
Miroslav Lachman wrote:
> Zkusil jsem fsck_msdosfs jak ve FreeBSD 6, tak ve FreeBSD 5.4. V 5.4
> nenajde zadny problem, v 6 najde toto:
> *** Phase 1. Read and Compare FATs
> FAT starts with odd byte sequence (f8fffffffffffff7)
> Correct? no [dam yes, aby to opravil]
> Pokud znovu spustim fsck_msdosfs, opet to najde tu samou chybu - a tak
> porad dokola.
> Kdyz fsck_msdosfs spustim jeste pred pokusem o mount, tak se chyba
> neobjevi, jakmile vsak oddil primountuji a odmountuji, zase to zahlasi
> tuhle chybu.
To s problemem nesouvisi. Zminena hodnota na zacatku FAT slouzi (u
FAT16 a FAT32, u FAT12 ne) jako znacka "dirty". Aby system poznal,
jestli pri poslednim pouzivani byla partition korektne odmountovana (a
mela by tedy byt v poradku) nebo ne a je vhodne uvazovat o FSCK.
Jenze, kod zajistujici tohle je trochu nejasne napsany (tedy, kdyz jsem
se do nej naposled dival, coz je asi sest nedel) a v nekterych situacich
hodnotu flagu nenastavuje dobre a partition zustane oznacena jako
"dirty" i v situaci, kdy to neni na miste. (ja vedel o situaci kdy RW
partition premountuju na RO, je ale mozne, ze se to deje i v jinych
situacich).
No a ta hlaska FSCK by mohla byt zvolena vhodneji ...
> primountovani FAT32 oddilu a pokusu o cteni z nej (staci treba i jen
> vypis souboru prikazem `ls`) zpanikari. Dela mi to ve vsech mnou
> testovanych verzich FreeBSD 6 (zkousel jsem Beta 1, 3, 4).
> Jakmile zkusim cist z disku - panic:
> panic: wrong dirclust
Tenhle neznam. Ja znam jiny, souvisejici s mountovanim jakehokolvi FAT
oddilu za pritomnosti geom_label modulu v jadre. (nebo obracene,
aktivaci tohoto modulu v systemu, kde jsou MSDOS disky).
Cast chyby byla nedavno opravena, nicmene, relevantni kod geom_label je
stale napsany jak od prasete (a ja takovehle vyrazy pouzivam malokdy).
Oprava zalepila jen nejhnusnejsi chyby na ktere zrovna nekdo upozornil a
vsechno ostatni ponechala v puvodnim stavu, ackoliv je jasne, ze je jen
otazka kombinace hardwaru, nez kod spadne i tam.
Jestli je ale tohle nejaky dalsi projev kvality tohoto kodu, nebo jde o
neco uplne jineho nelze takhle jednoduse posoudit.
> nebo je mozne, ze by jeste i v bete 4 byl nejaky schovany bug?
Jak by mohl. Bug ? Ve FreeBSD ? Nesmysl ... ;-)
Dan
More information about the Users-l
mailing list