[perf] Finding uninstalled modules Was Re: mailing list for traceusers

From: Arnaldo Carvalho de Melo
Date: Tue Sep 22 2009 - 18:26:35 EST


Em Tue, Sep 22, 2009 at 02:51:19PM +0300, Avi Kivity escreveu:
> On 09/22/2009 02:47 PM, Mike Galbraith wrote:
>>
>> Hm, must me a problem with parsing then. If you add -v -v to the
>> command line it'll spit out debug data. For vmx_vcpu_run you should see
>> a line like so if the module was parsed.
>>
>> new symbol: ffffffffa0065a49 [00000466]: ahci_interrupt, hist: (nil), obj_start: 0x2a49
>>
>> -Mike
>
> $ perf annotate -v -v -k ~avi/kvm/linux-2.6/vmlinux -m vmx_vcpu_run |

Here is the problem, he is passing a vmlinux, that way we don't parse
/proc/kallsyms, so no module symbols, he uses -m to load the modules
symbols but mod_dso__load_module_paths only looks at /lib/modules/, i.e.
installed modules.

I guess Avi hasn't installed modules, right? So the right fix for this
case is to figure out where modules are from the path given to -k, i.e.
we first use ~avi/kvm/linux-2.6/ as the modules path prefix and then
fallback to /lib/modules if we can't find modules there, right?

> grep vmx_vcpu_run
> new symbol: ffffffffa006f596 [0000dead]: vmx_vcpu_run [kvm_intel],
> hist: (nil), obj_start: (nil)
> ffffffffa006f596-ffffffffa006fb73 vmx_vcpu_run [kvm_intel]
> Error: symbol 'vmx_vcpu_run' not present amongst the samples.
>
> Looks like internal confusion.
>
> --
> error compiling committee.c: too many arguments to function
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/