Init startup sequence
Stefan Kalkowski
stefan.kalkowski at ...1...
Fri May 21 17:18:44 CEST 2010
Hi,
On Friday, 21. May 2010 16:43:15 Christian Prochaska wrote:
> Hi,
>
> I think we probably need a different malloc() implementation (or a
> Genode-specific __cxa_allocate_exception() implementation) in the cxx
> lib that doesn't cause exceptions to be thrown, because what your stack
> trace shows is that with the current implementation we can get an
> exception thrown inside init_exception_handling() itself and also
> potentially infinite recursive calls of malloc() .
Of course, you're right with your diagnosis, regarding the exception thrown
during exception initialization - I was blind ;-)
Nevertheless, I don't think Genode needs another malloc implementation here.
In Genode, the child process starts naked, meaning it has no resources
(except: bss, data and text segment and a capability to communicate to it's
parent) if it wants some resource or service it has to open a session (e.g.:
a RAM session) and therefore needs to talk to it's parent. If the initial
communication to it's parent fails, this is the real problem, which has to be
solved.
As far as I understood Steffen correctly, he ports Genode to a new platform
and it looks like init's first IPC call to it's parent (core) fails, probably
because your platform's IPC code doesn't work fully correct (e.g. some
trouble with the parent-capability given to init?).
regards Stefan
--
Stefan Kalkowski
Genode Labs Developer
http://genode-labs.com
More information about the users
mailing list