Building Genode for Gumstix Overo platform

Stefan Kalkowski stefan.kalkowski at ...1...
Thu Feb 16 16:27:20 CET 2012


On 16.02.2012 16:20, Michael Grunditz wrote:
> On 02/16/2012 03:55 PM, Michael Grunditz wrote:
>> On 02/16/2012 02:27 PM, Stefan Kalkowski wrote:
>>> Hi Michael,
>>>
>>> On 16.02.2012 14:07, Michael Grunditz wrote:
>>>> Hi
>>>>
>>>> I am also porting Genode to a new ARM board. Right now I am stuck with libc. It just halts with abort() as soon as it initiates. I cannot use GDB at this stage. Is there any other way of debuging this ? Adding prints to libc doesnt work since this problem is when libc init starts.
>>> that sounds like you're getting an exception at that point.
>>
>>  I guessed that
>>> If you're using the Fiasco.OC kernel together with Genode you can of
>>> course use it's included kernel-debugger, which is quiet feature-rich.
>>> You can invoke it by hand via the serial line by pressing escape, or you
>>> put a 'enter_kdebug("WAIT")' snippet at appropriate places of your code
>>> resp. libc initialization. Therefore you've to include the following before:
>>>
>>>   namespace Fiasco {
>>>   #include <l4/sys/kdebug.h>
>>>   }
>>>
>>> I fear the kernel-debugger's usage isn't that self-explanatory, but you
>>> can start playing around after looking at the help-screen via '?'.
>>> Something often useful is dumping the stacktrace of a thread via 'bt'.
>>> To get meaningful symbols instead of plain addresses there is a small
>>> tool in 'base-foc/contrib/kernel/fiasco/tool/backtrace'.
>> Just so I understand this : backtrace is used like , cat bt.txt |
>> ./backtrace /path/to/bin ?
>> I am a little bit confused over which binary I should compare to , i.e.
>> I don't get any match.
>>
> Ok so I got matches in the kernel. Thanks , at least it gives me a hint
> on where to start looking.

Sorry, I've missed you're debugging libc, which is a shared library, so
its not in the binary anyway and backtrace won't work out of the box. I
fear you've to do some steps manually: looking in which part (binary,
ldso, libc, ...) the addresses from the stack lying in and using the
offsets from their linking start-addresses to find the appropriate spot
in the code.

Regards
Stefan

> 
> ------------------------------------------------------------------------------
> Virtualization & Cloud Management Using Capacity Planning
> Cloud computing makes use of virtualization - but cloud computing 
> also focuses on allowing computing to be delivered as a service.
> http://www.accelacomm.com/jaw/sfnl/114/51521223/
> _______________________________________________
> Genode-main mailing list
> Genode-main at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
> 

-- 
Stefan Kalkowski
Genode Labs

http://www.genode-labs.com/ · http://genode.org/

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth




More information about the users mailing list