Hi Jean,
[adding Michael, since I know he was interested in this]
On Wed, Sep 04, 2013 at 07:04:14PM +0100, Jean Pihet wrote:
On ARM the debug info is not present in the .eh_frame sections but instead in .debug_frame. Use libunwind to load and parse the debug info.
How have you tested this? Regardless of whether or not I apply this patch, I get the same (broken/truncated) callchains for userspace in perf report.
E.g. the following stupid program (built with -O0 -g):
--->8
void bar(void) { int i; for (i = 0; i < 1000000; ++i) asm volatile("nop" ::: "memory"); }
void foo(void) { bar(); }
int main(void) { foo(); return 0; }
8<---
Gives me an incomplete callchain:
# Overhead Command Shared Object Symbol # ........ ........ ................. ............................... # 0.00% unwindme unwindme [.] bar | --- bar
This is the same with or without your patch.
Will