Re: [patch 0/4] perf_counter tools: support annotation of live kernel modules

Mike Galbraith
2009-07-02T07:18:10Z

On Thu, 2009-07-02 at 08:47 +0200, Ingo Molnar wrote:
> * Mike Galbraith <efault@gmx.de> wrote:
>
> > Per $subject, this patch set only supports for the LIVE kernel.
> > It adds support infrastructure for path discovery, load address
> > lookup, and symbol generation of live kernel modules.
> >
> > TODO includes resurrection of live annotation in perf top, and
> > support for annotation and report generation of other than live
> > modules. As the patch set sits, Perf top can generate symbols
> > from live binaries, but there's no live annotation capability yet.
> >
> > patch1: perf_counter tools: Make symbol loading consistently return number of loaded symbols.
> > patch2: perf_counter tools: Add infrastructure to support loading of kernel module symbols
> > patch3: perf_counter tools: connect module support infrastructure to symbol loading infrastructure
> > patch4: perf_counter tools: Enable kernel module symbol loading in tools
> >
> > Comments and suggestions most welcome.
>
> Looks very nice! I've applied it with a few minor stylistic fixlets
> and a tad more verbose changelogs.

Thanks!

(sorry about changelogs, I did stare at them, nothing spiffy happened)

> I'm wondering about the next step: couldnt we somehow guess at the
> position of the vmlinux too, validate somehow that it corresponds to
> the kernel we are running - and then use it automatically and by
> default?

I don't know of a way to discover where the image lives. Been pondering
that very thing, along with idiot-proofing.

> Plus, offline analysis would be nice as well i suspect - being able
> to look at profiles on a different box?

Yes, that's high on my TODO. I've been pondering a perf archive tool
that would package everything that's needed to do analysis on a
different box. One big problem though, is that while you can easily
package vmlinux and modules, what about all the userland binaries? A
large perf.data and/or debug info binaries can easily make transport
impractical enough.

After I resurrect (well, try) live annotation in top, I'll fiddle with
offline kernel analysis.

-Mike