Eli Cohen wrote:
> One more bit of info: I am using oprofile 0.9.2.
> On Thu, 2007-07-19 at 09:54 +0300, Eli Cohen wrote:
>> I am trying to archive profile data but the symbols from the modules are
>> not archived. Here is what I do:
>> 1. run a test
>> 2. oparchive --verbose=all -o /tmp/myarchs/3 -p /lib/modules/2.6.18-8.el5/updates/kernel/drivers/infiniband/ulp/ipoib
>> 3. opreport --symbols archive:/tmp/myarchs/3
>> If I just run:
>> opreport --symbols -p /lib/modules/2.6.18-8.el5/updates/kernel/drivers/infiniband/ulp/ipoib/
>> than I see symbols from the module.
>> what do I do wrong?
OProfile doesn't know where the module actually came from. Modules don't list
the file they are loaded from. This is a similar problem to the kernel itself.
One has to use the --vmlinux= option to point oprofile at the file the kernel
was loaded from. By default the modules exist in /lib/modules/`uname -r`, but
there is nothing to prevent someone that is developing modules to load them from
else where. One example of modules being loaded from a location other than
/lib/modules/`uname -r` is systemtap that generates an instrumentation module
for the kernel in /tmp.
Thus, you end up using the "-p" option with opreport.