hi,
as reported by Milian, currently for DWARF unwind (both libdw
and libunwind) we display callchain in callee order only.

Adding the support to follow callchain order setup to libunwind
DWARF unwinder, so we could get following output for report:

  $ perf record --call-graph dwarf ls
  ...
  $ perf report --no-children --stdio

    39.26%  ls       libc-2.21.so      [.] __strcoll_l
                 |
                 ---__strcoll_l
                    mpsort_with_tmp
                    mpsort_with_tmp
                    sort_files
                    main
                    __libc_start_main
                    _start
                    0

  $ perf report -g caller --no-children --stdio
    ...
    39.26%  ls       libc-2.21.so      [.] __strcoll_l
                 |
                 ---0
                    _start
                    __libc_start_main
                    main
                    sort_files
                    mpsort_with_tmp
                    mpsort_with_tmp
                    __strcoll_l

Tested on x86_64. The change is in generic code only,
so it should not affect other archs. Still it would be
nice to have some confirmation.. Wang Nan? ;-)

It'd be nice to have this for libdw unwind as well,
but it looks like it's out of reach for perf code.. Jan?

Also available in:
  git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
  perf/callchain_1

thanks,
jirka


Cc: Jan Kratochvil <jkrat...@redhat.com>
---
Jiri Olsa (3):
      perf tools: Move initial entry call into get_entries function
      perf tools: Add callchain order support for libunwind DWARF unwinder
      perf test: Add callchain order setup for DWARF unwinder test

 tools/perf/tests/dwarf-unwind.c    | 22 +++++++++++++++++++---
 tools/perf/util/unwind-libunwind.c | 60 
+++++++++++++++++++++++++++++++++++++++---------------------
 2 files changed, 58 insertions(+), 24 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to