|Subject:||Re: [Libunwind-devel] Crash inside _ULx86_64_step|
|Date:||Sun, 27 Sep 2009 23:08:52 -0700|
On Sat, Sep 26, 2009 at 7:04 PM, Haiping Zhao <address@hidden> wrote:
> Here it is. I still have the core dump, so please let me know if you need
> extra information. Thanks!
Looking at the address libunwind was trying to dereference, it looks
like libunwind got either bad or incomplete unwind information.
Couple of questions:
* Was gdb able to unwind the frames below backtrace()? If the unwind
information was bad, neither gdb nor libunwind will be able to unwind.
But gdb has the advantage of being out of process. If it dereferences
a bad pointer, it gets a EFAULT (not SIGSEGV).
* Typically this kind of a problem is the result of:
* Hand coded asm with missing unwind info
* Compiler generated bad/incomplete unwind info
To debug the latter case, we'll need to run with UNW_DEBUG_LEVEL=n and
further dump the unwind info (using readelf) and figure out where
things went wrong.
|[Prev in Thread]||Current Thread||[Next in Thread]|