libunwind-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Libunwind-devel] crashes trying to get a backtrace from a signal ha


From: Sven Neumann
Subject: Re: [Libunwind-devel] crashes trying to get a backtrace from a signal handler (ARM)
Date: Tue, 31 Aug 2010 12:56:09 +0200

On Tue, 2010-08-31 at 12:08 +0200, Sven Neumann wrote:
> On Mon, 2010-08-30 at 18:21 +0200, Lassi Tuura wrote:
> 
> > > 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.
> > 
> > Could you build your libunwind with --enable-debug and prefix the crashing
> > test run with "export UNW_DEBUG_LEVEL=1000"? That would help diagnosis.
> 
> No output at all. I have verified that I have debug output enabled by
> running the Lperf-simple test. It creates tons of debug output with
> UNW_DEBUG_LEVEL=1000. With test-async-sig all I get is a segfault:
> 
> # UNW_DEBUG_LEVEL=99 ./test-async-sig 
> Segmentation fault

There seems to be something else wrong with the test-async-sig binary.
For now I have given up to debug this further.

But I have debug output from my original problem. Here are the last
lines before it segfaults:

    >locate_debug_info: checking 0x8c340: 4000e000-40051f98
    >locate_debug_info: calculated bounds of 407a2000-40800e20 for 
'/lib/libc.so.0'
    >load_debug_frame: opened file '/lib/libc.so.0'. Section header at offset 
337736
    >load_debug_frame: loading string table of size 284
               >_ULarm_dwarf_find_debug_frame: loaded .debug_frame
               >_ULarm_dwarf_find_debug_frame: zero-length .debug_frame
               >callback: checking /usr/lib/libz.so.1, base=0x40801000)
               >callback: checking /usr/lib/libiconv.so.2, base=0x4081b000)
               >callback: checking /usr/lib/libarchive.so.2, base=0x40900000)
               >callback: checking /usr/lib/libunwind-arm.so.7, base=0x40933000)
               >callback: checking /usr/lib/libunwind.so.7, base=0x40969000)
               >callback: checking /usr/lib/libuuid.so.1, base=0x409a4000)
               >callback: checking /usr/lib/libgnutls.so.26, base=0x409b0000)
               >callback: checking /usr/lib/libgcrypt.so.11, base=0x40a51000)
               >callback: checking /usr/lib/libgpg-error.so.0, base=0x40acb000)
               >callback: checking /usr/lib/libogg.so.0, base=0x40ad6000)
               >callback: checking /lib/ld-uClibc.so.0, base=0x40000000)
              >_ULarm_dwarf_find_proc_info: IP=0x407adfe7 not found
                >put_rs_cache: unmasking signals/interrupts and releasing lock
               >_ULarm_dwarf_step: returning -10
 >_ULarm_step: dwarf_step()=-10
             >_ULarm_step: dwarf_step() failed (ret=0), trying frame-chain
Segmentation fault






reply via email to

[Prev in Thread] Current Thread [Next in Thread]