Re: [RFC] perf probe: Fix module probe issue if no dwarf support

From: Ravi Bangoria
Date: Tue Apr 26 2016 - 05:06:21 EST




On Tuesday 26 April 2016 02:59 AM, Masami Hiramatsu wrote:
On Mon, 25 Apr 2016 16:08:28 +0530
Ravi Bangoria <ravi.bangoria@xxxxxxxxxxxxxxxxxx> wrote:

Perf is not able to register probe in kernel module when dwarf supprt
is not there(and so it goes for symtab). Perf passes full path of
module where only module name is required which is causing the problem.
This patch fixes this issue.

Before applying patch:

$ dpkg -s libdw-dev
dpkg-query: package 'libdw-dev' is not installed ...

$ ./perf probe -m /linux/samples/kobject/kobject-example.ko foo_show
Added new event:
probe:foo_show (on foo_show in /linux/samples/kobject/kobject-example.ko)

You can now use it in all perf tools, such as:

perf record -e probe:foo_show -aR sleep 1

$ cat /sys/kernel/debug/tracing/kprobe_events
p:probe/foo_show /linux/samples/kobject/kobject-example.ko:foo_show

After applying patch:

$ ./perf probe -m /linux/samples/kobject/kobject-example.ko foo_show
Added new event:
probe:foo_show (on foo_show in kobject_example)

You can now use it in all perf tools, such as:

perf record -e probe:foo_show -aR sleep 1

$ cat /sys/kernel/debug/tracing/kprobe_events
p:probe/foo_show kobject_example:foo_show

Looks good to me :)
However, it seems that this patch depends on your previous patch
("perf probe: Fix offline module name missmatch issue")
In that case, could you make these a series of patches?

Acked-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>

Thanks Masami,

I've sent v2 with changes you suggested. Please review it.

Regards,
Ravi