vm_fault: fault on nofault entry
Dan Lukes
dan at obluda.cz
Fri Mar 17 18:25:21 CET 2006
> na svem FreeBSD 6.0-RELEASE-p1 obcas zazivam panic,
> a rad bych si vyjasnil Panic String.
> crash/info.0: Panic String: vm_fault: fault on nofault entry,
> addr: c9801000
> Co presne je "page fault" (ani searchovani handbooku ani google
> neda nic)?
Page fault je termin z oblasti spravy pameti tykajici se strankovani.
Nastane v okamziku, kdy se nejaky proces odkaze na takovou linearni
adresu pameti, ktera neni pritomna ve fyzicke pameti. Obsluha teto
vyjimky ma za ukol zjistit, kde obsah pameti je (vetsinu swap, kde
jinde), najit misto ve fyzicke pameti kam stranku umisti (vetsinou za
cenu toho, z ejinou odsune do swapu) a umistit ji tam. Po ukonceni
obsluhy procesor zopakuje instrukci, ktera fault vyvolala.
> Co presne je "vm_fault: fault on nofault entry"?
Pravdepodobne je to hlaska prave z obsluhy te vyjimky - kdyz ta
zjistila, ze pozadovana chybejici stranka je podle jejich zaznamu
"nestrankovatelna" - tedy se z pameti nikdy neodstranujici, ktera tedy
nemuze chybet - a kterou tedy nelze odnikud vytahnout a vratit. Samotny
fakt vzniku teto udalosti je jasnym dukazem vazne chyby v oblasti spravy
pameti, kterou navic nelze nijak napravit - system prisel na to, ze v
pameti ma neopravitelny bordel. Nema celkem jinou moznost jak
zareagovat, nez to zabalit ...
Obvykle je vyskyt teto chyby znamkou vady pameti nebo poruchy v
komunikaci s ni (vada chypu, ktery s ni komunikuje, pretaktovani,
pripadne vada L2 cache, ...). Dalsi moznost je, ze to je vada nejakeho
zarizeni resp. jeho ovladace zejmena v souvislosti s pouzitim DMA.
V neposledni rade by mohlo jit i o vadu samotneho strankovaciho kodu OS
(na verzi X.0 bych tut omoznost zcela neignoroval, ackoliv je spise malo
pravdepodobna).
> options ADAPTIVE_GIANT # Giant mutex is adaptive.
No, a kdyz je pan provokater a musi vyzkouset kazdou novinku, ktera se
objevi, tak se taky nemuze divit ... ;-)
> atapci0: using PIO transfers above 137GB as workaround for 48bit DMA
> access bug, expect reduced performance
A toto je pro zmenu dukaz, ze pouzity ATA chip neni prilis kvalitni.
Nutne se pak nabizi otazka, zda to je jeho jedina vada.
Dan
P.S. A mimochodem - na totaz "page fault" na Google je hned prvni odkaz
relativne dobrym zakladnim vysvetlenim toho, co to je. Takze nevim, jak
je mozne, ze tobe Google nic rozumneho nevratil ...
--
Dan Lukes SISAL MFF UK
AKA: dan at obluda.cz, dan at freebsd.cz,dan at kolej.mff.cuni.cz
More information about the Users-l
mailing list