public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Mike Galbraith <efault@gmx.de>
To: Avi Kivity <avi@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>,
	rostedt@goodmis.org, LKML <linux-kernel@vger.kernel.org>,
	Ingo Molnar <mingo@elte.hu>,
	Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Masami Hiramatsu <mhiramat@redhat.com>
Subject: Re: [patch] Re: [perf] Finding uninstalled modules Was Re: mailing list for trace users
Date: Wed, 23 Sep 2009 13:31:55 +0200	[thread overview]
Message-ID: <1253705515.7835.41.camel@marge.simson.net> (raw)
In-Reply-To: <4AB9F08E.1020106@redhat.com>

On Wed, 2009-09-23 at 12:55 +0300, Avi Kivity wrote:
> On 09/23/2009 12:20 PM, Mike Galbraith wrote:
> >
> > Yup, brown baggie variety.  Oh darn.
> >
> > perf_counter tools: fix brown baggie module symbol loading bug.
> >
> > If there are no modules currently loaded, or the last module scanned is not
> > loaded, dso__load_modules() steps on the value from dso__load_vmlinux(), so
> > we happily load the kallsyms symbols on top of what we've already loaded.
> >
> > Fix that such that the total count of symbols loaded is returned.  Should
> > module symbol load fail after parsing of vmlinux, is's a hard failure, so
> > do not silently fall-back to kallsyms.
> >
> >    
> 
> Still fails, but differently.  Now 'annotate -k ... -m -v -v' doesn't 
> list vmx_vcpu_run at all, even though it's prominent in 'perf top'.

Hm.  I just did a record, then report with and without -k -m, and now
get identical reports with your config (plus some more modules) here.

> In addition to applying your patch I've merged current linus, so that 
> may have introduced the problem.

I'm testing with freshly pulled and built tip+patch
.
> If I don't supply -k -m, I get
> 
> $ perf annotate  -v -v vmx_vcpu_run | grep vmx_vcpu
> new symbol: ffffffffa006f596 [0000dead]: vmx_vcpu_run    [kvm_intel], 
> hist: (nil), obj_start: (nil)
> new symbol: ffffffffa007025f [0000dead]: vmx_vcpu_put    [kvm_intel], 
> hist: (nil), obj_start: (nil)
> new symbol: ffffffffa0070bf6 [0000dead]: vmx_vcpu_load    [kvm_intel], 
> hist: (nil), obj_start: (nil)
> new symbol: ffffffffa0070d99 [0000dead]: vmx_vcpu_reset    [kvm_intel], 
> hist: (nil), obj_start: (nil)
> ffffffffa006f596-ffffffffa006fb73 vmx_vcpu_run    [kvm_intel]
>   ffffffffa007025f-ffffffffa007026e vmx_vcpu_put    [kvm_intel]
>   ffffffffa0070bf6-ffffffffa0070d98 vmx_vcpu_load    [kvm_intel]
>   ffffffffa0070d99-ffffffffa0071191 vmx_vcpu_reset    [kvm_intel]
>   Error: symbol 'vmx_vcpu_run' not present amongst the samples.

You can't annotate module symbols without -m.  If you don't provide -k,
annotate will look for vmlinux in cwd.  If there's one there, it'll
silently parse it.  For a module symbol, no -m means no symbol.

marge:/root/tmp # perf annotate -v -v -m ext3_mark_iloc_dirty 2>&1| grep ext3_mark_iloc_dirty
new symbol: ffffffffa005f8cf [0000dead]: ext3_mark_iloc_dirty   [ext3], hist: (nil), obj_start: (nil)
 ffffffffa005f8cf-ffffffffa005fc20 ext3_mark_iloc_dirty [ext3]
 Error: symbol 'ext3_mark_iloc_dirty' not present amongst the samples.

With -k -m it works here.

marge:/root/tmp # perf annotate -v -v -k vmlinux.avi -m ext3_mark_iloc_dirty 2>&1| grep ext3_mark_iloc_dirty
new symbol: ffffffffa005f8cf [00000352]: ext3_mark_iloc_dirty, hist: (nil), obj_start: 0x38cf
 ffffffffa005f8cf-ffffffffa005fc20 ext3_mark_iloc_dirty         [ext3]
annotating [0x22c10f0]                       [kernel] : [0x25821c0]           ext3_mark_iloc_dirty
         :      00000000000038cf <ext3_mark_iloc_dirty>:
         :      int ext3_mark_iloc_dirty(handle_t *handle,
    0.00 :          38e0:       e8 00 00 00 00          callq  38e5 <ext3_mark_iloc_dirty+0x16>
    5.93 :          392a:       74 1d                   je     3949 <ext3_mark_iloc_dirty+0x7a>
    0.02 :          394c:       e8 00 00 00 00          callq  3951 <ext3_mark_iloc_dirty+0x82>
    1.39 :          3975:       75 2a                   jne    39a1 <ext3_mark_iloc_dirty+0xd2>
    0.88 :          3989:       75 41                   jne    39cc <ext3_mark_iloc_dirty+0xfd>
    0.32 :          399f:       eb 37                   jmp    39d8 <ext3_mark_iloc_dirty+0x109>
    0.00 :          39a8:       74 06                   je     39b0 <ext3_mark_iloc_dirty+0xe1>
    0.00 :          39aa:       8b 15 00 00 00 00       mov    0x0(%rip),%edx        # 39b0 <ext3_mark_iloc_dirty+0xe1>
    0.00 :          39c0:       74 06                   je     39c8 <ext3_mark_iloc_dirty+0xf9>
    0.00 :          39c2:       8b 15 00 00 00 00       mov    0x0(%rip),%edx        # 39c8 <ext3_mark_iloc_dirty+0xf9>
    0.00 :          3a3c:       74 0d                   je     3a4b <ext3_mark_iloc_dirty+0x17c>
    0.00 :          3a46:       e9 ab 00 00 00          jmpq   3af6 <ext3_mark_iloc_dirty+0x227>
    0.24 :          3a60:       0f 86 90 00 00 00       jbe    3af6 <ext3_mark_iloc_dirty+0x227>
    0.04 :          3a7d:       74 06                   je     3a85 <ext3_mark_iloc_dirty+0x1b6>
    0.11 :          3a83:       75 71                   jne    3af6 <ext3_mark_iloc_dirty+0x227>
    0.00 :          3a89:       e8 00 00 00 00          callq  3a8e <ext3_mark_iloc_dirty+0x1bf>
    0.00 :          3aa4:       e8 00 00 00 00          callq  3aa9 <ext3_mark_iloc_dirty+0x1da>
    0.00 :          3aae:       0f 85 f5 00 00 00       jne    3ba9 <ext3_mark_iloc_dirty+0x2da>
    0.00 :          3ab7:       e8 00 00 00 00          callq  3abc <ext3_mark_iloc_dirty+0x1ed>
    0.00 :          3ae9:       e8 00 00 00 00          callq  3aee <ext3_mark_iloc_dirty+0x21f>
    0.00 :          3af1:       e9 26 fe ff ff          jmpq   391c <ext3_mark_iloc_dirty+0x4d>
    0.02 :          3b14:       74 09                   je     3b1f <ext3_mark_iloc_dirty+0x250>
    0.38 :          3b1d:       75 3e                   jne    3b5d <ext3_mark_iloc_dirty+0x28e>
    0.00 :          3b2f:       0f 87 ba 00 00 00       ja     3bef <ext3_mark_iloc_dirty+0x320>
    0.00 :          3b41:       0f 87 a8 00 00 00       ja     3bef <ext3_mark_iloc_dirty+0x320>
    0.00 :          3b5b:       eb 12                   jmp    3b6f <ext3_mark_iloc_dirty+0x2a0>
    6.64 :          3b6d:       75 ee                   jne    3b5d <ext3_mark_iloc_dirty+0x28e>
    0.04 :          3b77:       74 07                   je     3b80 <ext3_mark_iloc_dirty+0x2b1>
    0.09 :          3b84:       e8 00 00 00 00          callq  3b89 <ext3_mark_iloc_dirty+0x2ba>
    0.00 :          3b98:       e8 00 00 00 00          callq  3b9d <ext3_mark_iloc_dirty+0x2ce>
    0.00 :          3bb5:       74 17                   je     3bce <ext3_mark_iloc_dirty+0x2ff>
    0.00 :          3bc9:       e8 00 00 00 00          callq  3bce <ext3_mark_iloc_dirty+0x2ff>
    0.00 :          3c1c:       e9 4e ff ff ff          jmpq   3b6f <ext3_mark_iloc_dirty+0x2a0>



  parent reply	other threads:[~2009-09-23 11:32 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-16 20:16 mailing list for trace users Steven Rostedt
2009-09-21 19:17 ` Frederic Weisbecker
2009-09-22  0:46   ` Li Zefan
2009-09-22  9:31     ` Ingo Molnar
2009-09-21 19:50 ` John Kacur
2009-09-22  9:13 ` Avi Kivity
2009-09-22 10:59   ` Peter Zijlstra
2009-09-22 11:51     ` Mike Galbraith
2009-09-22 11:18   ` Mike Galbraith
2009-09-22 11:28   ` Mike Galbraith
2009-09-22 11:34     ` Avi Kivity
2009-09-22 11:47       ` Mike Galbraith
2009-09-22 11:51         ` Avi Kivity
2009-09-22 11:54           ` Mike Galbraith
2009-09-22 13:53             ` Mike Galbraith
2009-09-22 14:03               ` Avi Kivity
2009-09-22 19:09                 ` Mike Galbraith
2009-09-22 19:14                   ` Avi Kivity
2009-09-23  8:26                     ` Mike Galbraith
2009-09-22 20:17           ` [perf] Finding uninstalled modules Was " Arnaldo Carvalho de Melo
2009-09-23  8:31             ` Avi Kivity
2009-09-23  8:37               ` Arnaldo Carvalho de Melo
2009-09-23  9:15               ` Ingo Molnar
2009-09-23  9:20               ` [patch] " Mike Galbraith
2009-09-23  9:55                 ` Avi Kivity
2009-09-23 10:02                   ` Mike Galbraith
2009-09-23 11:31                   ` Mike Galbraith [this message]
2009-09-23 12:00                     ` Mike Galbraith
2009-09-23 12:58                     ` Avi Kivity
2009-09-23 13:06                       ` Mike Galbraith
2009-09-23 13:10                       ` Avi Kivity
2009-09-23 13:50                         ` Mike Galbraith
2009-09-23 14:00                           ` Avi Kivity
2009-09-23 14:09                             ` Mike Galbraith
2009-09-23 14:39                               ` Avi Kivity
2009-09-23 14:52                                 ` Mike Galbraith
2009-09-23 14:56                                   ` Avi Kivity
2009-09-23 15:05                                     ` Mike Galbraith
2009-09-23 15:09                                       ` Avi Kivity
2009-09-23 15:26                                         ` Mike Galbraith
2009-09-24  8:07                                         ` Mike Galbraith
2009-09-24 11:01                                           ` [tip:perf/urgent] perf tools: Handle relative paths while loading module symbols tip-bot for Mike Galbraith
2009-09-23 11:49                 ` [tip:perf/urgent] perf tools: Fix module symbol loading bug tip-bot for Mike Galbraith
2009-09-22 22:32 ` mailing list for trace users David Miller
2009-09-23 11:47   ` Ingo Molnar
2009-09-23 16:45     ` Masami Hiramatsu
2009-09-23 17:00       ` Ingo Molnar
2009-09-23 18:07         ` Masami Hiramatsu
2009-09-23 20:07           ` Ingo Molnar
2009-09-23 18:14     ` David Miller
2009-09-23 19:30       ` Ingo Molnar
2009-09-23 19:40         ` John Kacur
2009-09-23 19:42           ` John Kacur
2009-09-23 19:59             ` Ingo Molnar
2009-09-23 21:24               ` Steven Rostedt
2009-09-23 21:41                 ` Ingo Molnar
2009-09-23 21:56                 ` Ingo Molnar
2009-09-23 19:49           ` Ingo Molnar
2009-09-23 20:08             ` John Kacur
2009-09-23 21:54         ` David Miller
2009-09-23 22:02           ` Ingo Molnar
2009-09-23 22:47         ` David Miller
2009-09-24 11:51           ` Ingo Molnar
2009-09-23 11:48   ` Ingo Molnar
2009-09-23 18:12     ` David Miller
2009-09-23 19:41       ` Ingo Molnar
2009-09-23 21:55         ` David Miller
2009-09-23 22:10           ` Ingo Molnar
2009-09-23 22:41             ` David Miller
2009-09-24 11:16               ` Ingo Molnar
2009-09-24 16:40                 ` David Miller
2009-09-24 18:58                 ` David Miller
2009-09-24 19:22                   ` Ingo Molnar

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=1253705515.7835.41.camel@marge.simson.net \
    --to=efault@gmx.de \
    --cc=a.p.zijlstra@chello.nl \
    --cc=acme@redhat.com \
    --cc=avi@redhat.com \
    --cc=fweisbec@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mathieu.desnoyers@polymtl.ca \
    --cc=mhiramat@redhat.com \
    --cc=mingo@elte.hu \
    --cc=rostedt@goodmis.org \
    --cc=tglx@linutronix.de \
    /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