Arun,
We have multi-platform, or remote, unwinding working. For instance,
x86-64 backtracing an i386, or even a 32-bit PowerPC unwinding an
x86-64. That is cool, way cool, something to celebrate! We've finally
got this out of the "left as an exercise for the reader" bucket :-)
With this functionality working becomes possible to do cool stuff such
as display backtraces of a process as it alternatively exec's 32-bit and
then 64-bit programs.
Indeed. When you did this, I suppose you wrote your own accessors to get to the memory of the remote process whose stack is being unwound?
Our challenges now are:
- get frysk's existing local fixes to libunwind finally merged
To me Gget_unwind_table.c seems to be doing something different from _UPT*. So I don't see why
libunwind/src/ptrace/_UPT_find_proc_info.c
should be patched. But if your goal is to get something like Gget_unwind_table.c into libunwind, so remote unwinding would work out of the box for many common cases, that would be a separate patchset.
I think David still should be the primary reviewer for that. I'd be happy to review any x86/x86_64 specific bits.
-Arun