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 <[email protected]>
> >
> > v2 --> v3: handle symfs="/"
>
> [a...@felicio ~]$ ./realpath /..//.
> /
> [a...@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
[a...@mica linux]$ find /tmp/bla
/tmp/bla
/tmp/bla/lib64
/tmp/bla/lib64/libc-2.5.so
[a...@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.
[a...@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)
#
[a...@mica linux]$
--
To unsubscribe from this list: send the line "unsubscribe linux-perf-users" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html