Re: L4Android kernel didn't intialize L4 stack for the server thread.
Haohui Mai <[email protected]>
| Newsgroups | gmane.comp.micro-kernel.l4.devel |
|---|---|
| Message-ID | <[email protected]> |
One more related question -- it seems that when I call Linux functions, e.g., vmalloc(). The contents of message registers are no longer preserved. Is it desired behavior? I appreciate if you could document it somewhere if it's indeed the case. :-) ~Haohui On Apr 2, 2012, at 4:23 AM, Adam Lackorzynski wrote: > > On Sun Apr 01, 2012 at 15:09:11 -0500, Mai, Haohui wrote: >> It seems that I found a bug in the latest version of L4Android kernel. I'm >> familiar enough with the code base so your comments are highly appreciated. >> >> The main thread for L4Linux (i.e., the thread running l4x_server_loop()) >> didn't initialize l4x_stack before execution. Therefore, this thread >> crashes whenever it calls cli() / sti(). >> >> Calling vmalloc() and kmalloc() can reproduce this bug reliably. Here is a >> patch to fix this problem. > > On this thread no Linux code must be called, so any stack setup is not > required. Call Linux functionality only in proper CPU contexts. > > > > Adam > -- > Adam [email protected] > Lackorzynski http://os.inf.tu-dresden.de/~adam/ > > _______________________________________________ > l4-hackers mailing list > [email protected] > http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers