Re: perf: relative path to source for perf probe?

Masami Hiramatsu
2010-05-13T21:01:49Z

Chase Douglas wrote:
> I'm trying to play with perf probe to insert trace events into a
> running kernel, but I haven't found a way to specify relative
> pathnames. For example, our build machines for Ubuntu build the kernel
> inside /build/buildd/linux-2.6.34. If I want to use perf probe, it
> seems I need to ensure the source exists in exactly the same location
> on my machine.

Right, perf-probe currently doesn't support relative *source* path option.
It just uses a source code path information in dwarf. I need to dig it more
into dwarf, especially kernel debuginfo has those information.

That could be a good improvement idea for perf probe (adding -s option?).

> Compare this to gdb, where I can put the source at
> /home/cndougla/perf/build/buildd/linux-2.6.34 and specify a relative
> path for sources of /home/cndougla/perf using the dir command. I have
> read the perf code and I have not found any way to do this. I would be
> interested in adding support for this as a cmd line option, but I'm
> not very familiar with the rest of perf. Is this functionality
> specific to perf-probe? Should this be in some logic in util/ or in
> builtin-probe.c?

Both of it. Adding -s option handling code to builtin-probe.c and
actual path modifying code in show_line_range()@util/probe-event.c.
(I assume you'd like to use -L option)

Thank you,

--
Masami Hiramatsu
e-mail: mhiramat@redhat.com