libunwind-devel
[Top][All Lists]
Advanced

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

[Libunwind-devel] Remote unwind callbacks questions


From: Curt Wohlgemuth
Subject: [Libunwind-devel] Remote unwind callbacks questions
Date: Tue, 23 Oct 2007 17:43:54 -0700
User-agent: Mutt/1.5.6i

Hi:

I've been trying to use the latest unwind library with my app on x86-64 for
remote unwinding of a (live) target process.  I seem to be confused about
the use of my own accessor functions as sent to unw_create_addr_space().


First, the find_proc_info callback seems to want (using the example in the
src/ptrace/ directory) a highly specific data structure passed back in the
"unwind_info" field: a dwarf_cie_info_t data structure, that isn't defined
in any exported libunwind header files.

It seems very strange that I'm able to specify my own callback function, yet
if I do, I'm required to borrow lots of code in order to cobble up the
unwind information in a form that the library wants.  It also forces me to
understand a lot of the Dwarf unwind info, which seems less than ideal; why
not just pass information sucked out of the .eh_frame section, and let the
library parse it itself??


Second, I'm never seeing my "put_unwind_info" callback being called.  From
what I can tell from the libunwind sources, it appears that this callback is
invoked ONLY for dynamic proc/unwind info -- not for "normal" (static)
unwind info (see src/dwarf/Gparser.c::put_unwind_info() ).

Am I missing something?

Thanks,
Curt




reply via email to

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