From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Milian Wolff <milian.wolff@kdab.com>
Cc: linux-perf-users@vger.kernel.org, David Ahern <dsahern@gmail.com>,
He Kuang <hekuang@huawei.com>
Subject: Re: Cross platform perf reporting
Date: Fri, 12 Aug 2016 12:31:25 -0300 [thread overview]
Message-ID: <20160812153125.GK27651@kernel.org> (raw)
In-Reply-To: <1710265.PTtVSNFpcJ@milian-kdab2>
Em Fri, Aug 12, 2016 at 05:10:18PM +0200, Milian Wolff escreveu:
> On Friday, August 12, 2016 2:22:29 PM CEST Milian Wolff wrote:
> > I'm trying to analyze perf.data files that I recorded on one machine
> > (usually arm or arm64) on my development machine (x86_64). I have compiled
> > a new version of perf (and the corresponding dependencies, where needed) to
> > do this.
Adding He Kuang, that did work on this area recently.
> > Now I do:
> >
> > ~~~~~~~~~~~~~~~~~~~~~~~~
> > aarch64$ perf record -g ...
> > aarch64$ perf archive
> >
> > x86_64$ scp aarch64:perf.data* .
> > x86_64$ tar xvf perf.data.tar.bz2 -C ~/.debug
> > x86_64$ perf report |& less
> > -> lots of errors, none of which are displayed in the TUI, such as:
> >
> > unwind: target platform=arm64 is not supported
> > (often repeated)
> > Failed to open /lib/ld-2.21.so, continuing without symbols
> > Failed to open /lib/libc-2.21.so, continuing without symbols
> > Failed to open /lib/libpthread-2.21.so, continuing without symbols
> > Failed to open /lib/libdl-2.21.so, continuing without symbols
> > ...
> > ~~~~~~~~~~~~~~~~~~~~~~~~
>
> What I notice, is that `perf buildid-list` does not contain any of these
That is a limitation that needs fixing, what gets into the build-id are
entries that had hits, DSOs, but those are sample hits, not callchain
hits.
We would have to traverse all callchains and add build-id entries for
the DSOs in it.
I need to do this :-\
But if you have a copy of your target in a file and use --symfs with it it
should work, because then, because it doesn't have the build-id for the DSOs in
the callchains that didn't had hits, it will resort to using just the pathname
when looking for a symtab or the whole ELF for annotation, etc.
> files. I also don't have the corresponding files in my target's ~/.debug
> folder, where everything seems to work as expected. Is that, because there the
> symbols are read directly from the file and nothing is cached in ~/.debug?
That is a possibility, yes. But it should be adding it to ~/.debug, that
is the default, unless you have something disabling that in your
~/.perfconfig or some sort of problem is happening that is preventing it
to do the hardlink/copy.
> Can I set an environment variable to let perf know to look in secondary paths
> for the libraries? I.e. I hope to make it look into the cross compile sysroot
> for these libraries, instead of literally interpreting the path as a valid
> path on my development machine.
That is the --symfs David talked about, no?
[acme@jouet linux]$ perf report -h symfs
Usage: perf report [<options>]
--symfs <directory>
Look for files with symbols relative to this directory
[acme@jouet linux]$
> Thanks
>
> --
> Milian Wolff | milian.wolff@kdab.com | Software Engineer
> KDAB (Deutschland) GmbH&Co KG, a KDAB Group company
> Tel: +49-30-521325470
> KDAB - The Qt Experts
next prev parent reply other threads:[~2016-08-12 15:31 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-12 12:22 Cross platform perf reporting Milian Wolff
2016-08-12 14:38 ` David Ahern
2016-08-12 15:10 ` Milian Wolff
2016-08-12 15:31 ` Arnaldo Carvalho de Melo [this message]
2016-08-15 12:20 ` Milian Wolff
2016-08-15 14:42 ` David Ahern
2016-08-15 15:22 ` Milian Wolff
2016-08-15 16:08 ` David Ahern
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160812153125.GK27651@kernel.org \
--to=acme@kernel.org \
--cc=dsahern@gmail.com \
--cc=hekuang@huawei.com \
--cc=linux-perf-users@vger.kernel.org \
--cc=milian.wolff@kdab.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.