[OSy] problem pri testu malloc1
Martin Decky
decky at nenya.ms.mff.cuni.cz
Sat Dec 2 18:58:34 CET 2006
> Do jisteho momentu vse funguje, pak
> ale pridani jakehokoliv kodu (i kodu napriklad ve funkcich kolem
> virtualni pameti, ktere se urcite nevolaji) zpusobi chybu. Z toho to
> vypada, jako bych pri zvetseni zdrojaku si zacal zapisovat do kodu
> programu, ale jsem si pomerne jisty, ze vsechny alokacejsou nad
> adresou _kernel_end.
Ta pricina urcite neni v tom, ze zvetsujete zdrojak, spis se ta pamet
kropi v dusledku nejake chyby spravy pameti porad, jen se v tomto
pripade projevi.
> Zkousel jsem pro jistotu alokovat pamet az o 4kB dal od kernelu,
> zvetsovat velikost zasobniku vlakna. Bez uspechu.
Magie s pridavanim ruznych pametovych polstaru vetsinou nefunguje (a
pokud nahodou funguje, ale neni jasne proc, tak to svedci o tom, ze je v
kodu neco hodne spatne).
Nejlepsi (i kdyz nejpracnejsi) je dusledne projit radku po radce kod
spravy pameti, zkontrolovat, zda se nekde nevyskytuje nejaka divna
konstrukce (ten cas tomu venovany lze soucasne pouzit k duslednemu
okomentovani kodu), na mista, odkud prichazi nejaka hodnota "z venku",
je vhodne dat asserty kontrolujici konzistenci atd.
M.D.
More information about the NSWI004
mailing list