[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <AANLkTincvUH7p-aHsDZoThUQn_eZkdbq3A8bM5i5ytpo@mail.gmail.com>
Date: Thu, 3 Jun 2010 20:18:04 +0200
From: Stephane Eranian <eranian@...gle.com>
To: Arnaldo Carvalho de Melo <acme@...radead.org>
Cc: linux-kernel@...r.kernel.org, peterz@...radead.org, mingo@...e.hu,
paulus@...ba.org, davem@...emloft.net, fweisbec@...il.com,
perfmon2-devel@...ts.sf.net, eranian@...il.com, tzanussi@...il.com
Subject: Re: how to use perf annotate on the kernel
perf annotate __lock_acquire -k /home/eranian/perfmon/official/tip/build/vmlinux
build id event received for [kernel.kallsyms]:
5c110a704293a259fbe11158dc1b25107ad7a23e
build id event received for
/lib/modules/2.6.35-rc1-tip/kernel/arch/x86/kernel/cpu/cpufreq/mperf.ko:
cb5
build id event received for
/lib/modules/2.6.35-rc1-tip/kernel/drivers/cpufreq/cpufreq_ondemand.ko:
cdb5
Using /home/eranian/perfmon/official/tip/build/vmlinux for symbols
hist_entry__inc_addr_samples: ip=0xffffffff81073b36
0xffffffff81073b30 __lock_acquire: period++ [ip: 0xffffffff81073b36, 0x6] => 1
hist_entry__inc_addr_samples: ip=0xffffffff81073c94
But in the end I get:
objdump: '[kernel.kallsyms]': No such file
------------------------------------------------
Percent | Source code & Disassembly of [kernel.kallsyms]
------------------------------------------------
On Thu, Jun 3, 2010 at 8:11 PM, Arnaldo Carvalho de Melo
<acme@...radead.org> wrote:
> Em Thu, Jun 03, 2010 at 03:06:13PM -0300, Arnaldo Carvalho de Melo escreveu:
>> For instance, here using -vvv I get:
>>
>> [root@...lia ~]# perf annotate -vvv memcpy > /dev/null
>> build id event received for [kernel.kallsyms]: 310920b54cbbf242dbfa09052f652806d2c73821
>> build id event received for /lib64/libtinfo.so.5.7: cd9da7b5b1fcb25ee6b3762bb9fe62f782590fd5
>> Looking at the vmlinux_path (6 entries long)
>> No build_id in /root/.debug/.build-id/31/0920b54cbbf242dbfa09052f652806d2c73821, ignoring it
>> No build_id in vmlinux, ignoring it
>> No build_id in /boot/vmlinux, ignoring it
>> No build_id in /boot/vmlinux-2.6.35-rc1, ignoring it
>> Using /lib/modules/2.6.35-rc1/build/vmlinux for symbols
>> hist_entry__inc_addr_samples: ip=0xffffffff811ea69e
>> 0xffffffff811ea690 memcpy: period++ [ip: 0xffffffff811ea69e, 0xe] => 1
>> hist_entry__annotate: filename=/lib/modules/2.6.35-rc1/build/vmlinux, sym=memcpy, start=0xffffffff811ea690, end=0xffffffff811ea730
>> annotating [0x187e770] /lib/modules/2.6.35-rc1/build/vmlinux : [0x19b1f70] memcpy
>> Executing: objdump --start-address=0xffffffff811ea690 --stop-address=0xffffffff811ea730 -dS /lib/modules/2.6.35-rc1/build/vmlinux|grep -v /lib/modules/2.6.35-rc1/build/vmlinux|expand
>> [root@...lia ~]#
>>
>> I'm removing all vmlinux from the path so that I can reproduce what you see.
>
> [root@...lia ~]# mv /lib/modules/2.6.35-rc1/build/vmlinux /lib/modules/2.6.35-rc1/build/vmlinux.OFF
> [root@...lia ~]# perf annotate -vvv memcpy > /dev/null
> build id event received for [kernel.kallsyms]: 310920b54cbbf242dbfa09052f652806d2c73821
> build id event received for /lib64/libtinfo.so.5.7: cd9da7b5b1fcb25ee6b3762bb9fe62f782590fd5
> Looking at the vmlinux_path (6 entries long)
> No build_id in /root/.debug/.build-id/31/0920b54cbbf242dbfa09052f652806d2c73821, ignoring it
> No build_id in vmlinux, ignoring it
> No build_id in /boot/vmlinux, ignoring it
> No build_id in /boot/vmlinux-2.6.35-rc1, ignoring it
> No build_id in /lib/modules/2.6.35-rc1/build/vmlinux, ignoring it
> No build_id in /usr/lib/debug/lib/modules/2.6.35-rc1/vmlinux, ignoring it
> Using /proc/kallsyms for symbols
> [root@...lia ~]#
> [root@...lia ~]# vi ~/.perfconfig
> [root@...lia ~]# cat ~/.perfconfig
> [tui]
>
> report = on
> annotate = off
> [root@...lia ~]# perf annotate memcpy
> [root@...lia ~]# perf annotate memcpy
> [root@...lia ~]# perf annotate -k vmlinux memcpy
> [kernel.kallsyms] with build id 310920b54cbbf242dbfa09052f652806d2c73821 not found, continuing without symbols
>
> Yeah, these error messages suckz, will work on having proper messages
> for these cases :-\
>
> - Arnaldo
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists