在 2016/6/8 18:15, He Kuang 写道:
The remote unwind can supported scenario where we collect on a x86_64
machine and want to do analysis on a ARM64 or x86-32 machine. Though
this is not tested, after Arnaldo questioned the above issue, I tested
and found a bug.

In util/unwind-libunwind-local.c, PERF_REG_SP/IP is used, but those
macros are assigned to the host platform, we should redefine them in
the wrapper file, for example in "util/libunwind/x86_32.c".

After fixing this problem, i686 perf.data can be parsed on aarch64
machine.

To Arnaldo, I noticed that this patch
"perf tools: Find vdso supporting cross-platform analysis"
is not on "origin/perf/unwind" branch, this patch was applied, please
check if it was missed, the above test needs this patch.
Thanks for solving this, and please have a look at the patches in
this thread.

He Kuang (3):
   perf unwind: Change macro names of perf register
   perf unwind: Fix wrongly used regs for x86_32 unwind
   perf unwind: Fix wrongly used regs for aarch64 unwind

  tools/perf/util/libunwind/arm64.c        | 5 +++++
  tools/perf/util/libunwind/x86_32.c       | 6 ++++++
  tools/perf/util/unwind-libunwind-local.c | 6 ++++--
  tools/perf/util/unwind.h                 | 9 +++++++++
  4 files changed, 24 insertions(+), 2 deletions(-)



Reply via email to