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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).