Hi,

we are using the latest git master version of libunwind. We have code
that creates a backtrace using libunwind and it works just fine if it is
called explicitely. The same code however crashes on the ARM platform if
it is invoked from a signal handler. The idea is of course to get a
backtrace if the application segfaults. This does work fine (with the
same code) on x86.

We are on Linux 2.6.35.3, using uCLibC 0.9.30.1. The platform uses an
XScale-V3 based processor that implements the ARMv5te architecture, the
ABI is EABI.

The crash always happens after unwind_step() has reached
__default_sa_restorer() from /lib/libc.so.0. I can't tell exactly what
goes wrong, but it appears that the next call to unwind_step() causes
the crash.

I've compiled tests/test-async-sig.c for the target platform and it also
crashes.

I've done done googling and stumpled across this post from 2007, I
wonder if it is in any way related:
http://sourceware.org/ml/libc-ports/2007-05/msg00002.html


Any help with this would be much appreciated,
Sven

-- 
Sven Neumann
Head of Software Development

RAUMFELD GmbH | Reichenberger Str. 124 | 10999 Berlin | Germany
Tel: +49.30.340.60.98.0 | Fax: +49.30.340.60.98.99 | [email protected]


_______________________________________________
Libunwind-devel mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/libunwind-devel

Reply via email to