From: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
To: David Ahern <daahern@cisco.com>
Cc: linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3] perf tools: Add symfs option for off-box analysis using specified tree
Date: Tue, 14 Dec 2010 10:52:45 -0200 [thread overview]
Message-ID: <20101214125245.GB13425@ghostprotocols.net> (raw)
In-Reply-To: <20101214122428.GA13425@ghostprotocols.net>
Em Tue, Dec 14, 2010 at 10:24:28AM -0200, Arnaldo Carvalho de Melo escreveu:
> Em Thu, Dec 09, 2010 at 01:27:07PM -0700, David Ahern escreveu:
> > The symfs argument allows analysis of perf.data file using a locally
> > accessible filesystem tree with debug symbols - e.g., tree created
> > during image builds, sshfs mount, loop mounted KVM disk images,
> > USB keys, initrds, etc. Anything with an OS tree can be analyzed from
> > anywhere without the need to populate a local data store with
> > build-ids.
> >
> > Signed-off-by: David Ahern <daahern@cisco.com>
> >
> > v2 --> v3: handle symfs="/"
>
> [acme@felicio ~]$ ./realpath /..//.
> /
> [acme@felicio ~]$
>
> I'll fix this up and merge, thanks!
Ok, there are still some problems:
It is escaping the symfs jail for /home/acme/bin/perf, /lib64/libpthread-2.5.so
and kernel modules, investigating...
- Arnaldo
[acme@mica linux]$ find /tmp/bla
/tmp/bla
/tmp/bla/lib64
/tmp/bla/lib64/libc-2.5.so
[acme@mica linux]$ perf report -v -g none --stdio --symfs /tmp/bla > /tmp/out
Looking at the vmlinux_path (3 entries long)
Failed to open [kernel.kallsyms], continuing without symbols
dso__synthesize_plt_symbols: problems reading /home/acme/bin/perf PLT info.
dso__synthesize_plt_symbols: problems reading /lib64/libpthread-2.5.so PLT info.
dso__synthesize_plt_symbols: problems reading /lib/modules/2.6.37-rc3-00084-gd937616/kernel/drivers/net/ixgbe/ixgbe.ko PLT info.
[acme@mica linux]$ cat /tmp/out
# Events: 503 cycles
#
# Overhead Command Shared Object Symbol
# ........ ........... ........................................................................ .............................
#
86.67% perf [kernel.kallsyms] 0xffffffff8106f697 ! [k] 0xffffffff8106f697
2.56% swapper [kernel.kallsyms] 0xffffffff81089f50 ! [k] 0xffffffff81089f50
0.84% perf /lib64/libc-2.5.so 0x798ed d [.] __memchr
0.84% perf /home/acme/bin/perf 0x26bf1 G [.] die_builtin
0.82% perf /lib64/libc-2.5.so 0x728ea d [.] _int_malloc
0.63% perf /lib64/libc-2.5.so 0xe6077 d [.] ___snprintf_chk
0.63% perf /lib64/libc-2.5.so 0x7b528 d [.] __GI_memcpy
0.63% perf /lib64/libc-2.5.so 0x786c0 d [.] index
0.51% perf /lib64/libc-2.5.so 0x625b0 d [.] _IO_getline_internal
0.42% perf /lib64/libc-2.5.so 0x6265a d [.] _IO_getline_info
0.42% perf /lib64/libc-2.5.so 0x6cbc4 d [.] _IO_new_file_underflow
0.42% perf /lib64/libc-2.5.so 0x6d148 d [.] _IO_un_link_internal
0.34% perf /lib64/libc-2.5.so 0x60c49 d [.] _IO_new_fclose
0.21% perf /lib64/libc-2.5.so 0x5ff40 d [.] __find_specmb
0.21% perf /lib64/libc-2.5.so 0x6c35b d [.] _IO_new_file_fopen
0.21% perf /home/acme/bin/perf 0x1db4b G [.] event__synthesize_kernel_mmap
0.21% perf /lib64/libc-2.5.so 0x6d3c5 d [.] _IO_link_in_internal
0.21% perf /lib64/libc-2.5.so 0x34524 d [.] __GI_____strtoll_l_internal
0.21% perf /home/acme/bin/perf 0x4700 G [.] _init
0.21% perf /lib64/libc-2.5.so 0x41907 d [.] _itoa_word
0.21% perf /lib64/libc-2.5.so 0x6148f d [.] fgets
0.21% perf /home/acme/bin/perf 0x1deca G [.] event__synthesize_comm
0.21% perf /lib64/libc-2.5.so 0xcfe7d d [.] __munmap
0.21% perf /lib64/libc-2.5.so 0x79513 d [.] __GI_strstr
0.21% perf /lib64/libc-2.5.so 0x6e060 d [.] _IO_setb_internal
0.21% perf /lib64/libc-2.5.so 0x6bac3 d [.] _IO_file_close_internal
0.21% perf /lib64/libc-2.5.so 0x95dc3 d [.] __getdents64
0.21% perf /lib64/libc-2.5.so 0x6f1b2 d [.] _IO_str_init_static_internal
0.21% perf /lib64/libpthread-2.5.so 0xd210 G [.] __write_nocancel
0.21% perf /lib64/libc-2.5.so 0x9595a d [.] __readdir_r
0.21% perf /home/acme/bin/perf 0xddbd G [.] atexit_header
0.21% perf /lib64/libc-2.5.so 0xc4de7 d [.] __GI___open
0.12% pcscd [unknown] 0x3f44a79110 ! [.] 0x3f44a79110
0.09% pcscd [kernel.kallsyms] 0xffffffff810e59ac ! [k] 0xffffffff810e59ac
0.03% sshd [kernel.kallsyms] 0xffffffff810f45f9 ! [k] 0xffffffff810f45f9
0.03% kworker/0:1 /lib/modules/2.6.37-rc3-00084-gd937616/kernel/drivers/net/ixgbe/ixgbe.ko 0x605 G [k] ixgbe_update_stats
0.02% sshd [unknown] 0x7f78ed5f8ccb ! [.] 0x7f78ed5f8ccb
#
# (For a higher level overview, try: perf report --sort comm,dso)
#
[acme@mica linux]$
next prev parent reply other threads:[~2010-12-14 12:52 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-12-09 20:27 [PATCH v3] perf tools: Add symfs option for off-box analysis using specified tree David Ahern
2010-12-14 12:24 ` Arnaldo Carvalho de Melo
2010-12-14 12:52 ` Arnaldo Carvalho de Melo [this message]
2010-12-14 14:06 ` Arnaldo Carvalho de Melo
2010-12-14 14:33 ` David S. Ahern
2010-12-14 14:39 ` Arnaldo Carvalho de Melo
2010-12-14 14:27 ` David S. Ahern
2010-12-14 14:35 ` Arnaldo Carvalho de Melo
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=20101214125245.GB13425@ghostprotocols.net \
--to=acme@ghostprotocols.net \
--cc=daahern@cisco.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-perf-users@vger.kernel.org \
/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).