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@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main