I’ve ended up implementing my own stack unwinder based on the SP register which is delivered via signal handler. Here is the info I have used: http://www.sivachandran.in/2006/12/backtracing-from-code-in-arm.html
And I’ve hit the same problem: couldn’t get past the signal handler. Than I have searched all over the places and found a piece of information about CONF_ARM_UNWIND kernel option. I have activated that and everything worked like a charm! No debug symbols needed anywhere. For the entire thing to work, I had to add -fno-omit-frame-pointer to both libc and my apps. Everything works as expected, I have a <1KB text file with the stack trace if things are going haywire in production. I guess that putting that option on kernel and -fno-omit-frame-pointer on apps will make libunwind perform as expected as well Best regards, Andrei On Apr 25, 2014, at 5:59, Arun Sharma <[email protected]> wrote: > On Thu, Apr 24, 2014 at 10:28 AM, Eugen-Andrei Gavriloaie > <[email protected]> wrote: > >> >> What needs to be done to get past libc and further into the stack? >> > > I'm not familiar with your platform, but in general, you could compile > with --enable-debug and run with UNW_DEBUG_LEVEL=n to get additional > info. > Things to check: objdump the libc to make sure that it has the unwind > info (.eh_frame section or .debug_info). Sometimes the debug info is > packaged separately. > > -Arun _______________________________________________ Libunwind-devel mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/libunwind-devel
