[OSy] Problem se stackem v KUSEG

Jiri Tousek jiri.tousek at gmail.com
Tue Jan 9 13:38:47 CET 2007


Dobry den,

doporucil bych odtrasovat pruchod handlerem TLB refill/TLB invalid
(pokud si dobre pamatuji, "access violation" muze nastat jen tam) - a
zjistit proc k ni doslo. Zkontrolovat, ze v entryHi je spravne
nastaveny asid vlakna, ze mapovani je zapsane v mapovacich
tabulkach...

J.T.

On 1/9/07, Michal Foltýn <mike at section.cz> wrote:
> Zdravim,
>
> mam dve vlakna, jedno kerneli a jedno uzivatelske.
> Stack u toho kerneliho (idle) vlakna vytvarim tak jak to mela predchozi
> skupina, tzn. pomoci mallocu v KSEG0.
> Stack u toho "uzivatelskeho" (tam kde je nakopirovan kod procesu) se
> nyni snazim premistit na nejakou konkretni adresu v KUSEGu pomoci
> vmalloc. Pamet pomoci vmallocu se v poradku naalokuje. To moje
> uzivatelske vlakno sdili adresovy prostor s tim kernelim (thread_create() ).
>
> Nicmene po spusteni mi to zahlasi "Access to address 0x0 not allowed".
> Po trpelivem "debugovani" jsem zjistil, ze to vyhuci v context switchi
> (hned pri prvnim prepnuti na to uzivatelske vlakno). To same to hlasi,
> pokud zakomentuju registry pro prepnuti do user modu a tim zustanu v
> kernelu.
>
> Rikal jsem si jestli chyba neni treba v nastaveni entryhi, entrylo, ale
> bud tady chyba neni, a nebo to nastavuju nejak spatne.
>
> Pokud vytvarim stack pomoci vmalloc v KSEG0 tak mi to chodi (sice ne v
> user space, ale aspon se to spusti).
>
> Pouzivame kernel Sirius(kohlto).
>
> Setkali jste se s tim nekdo?
> Diky
>
> Michal F.
>
>
> _______________________________________________
> OSy mailing list
> OSy at dsrg.mff.cuni.cz
> http://dsrg.mff.cuni.cz/mailman/listinfo/osy
>


More information about the NSWI004 mailing list