Re: perf probe issues

From: Masami Hiramatsu
Date: Tue Jun 14 2016 - 22:02:16 EST


On Tue, 14 Jun 2016 14:05:04 -0300
Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote:

> Hi Masami,
>
> While investigating a problem in the annotation code reported by
> Linus, with "kaslr" on the kernel command line and this in .config:
>
> [root@jouet ~]# egrep 'CONFIG_(RANDOMIZE_BASE|DEBUG_INFO)' ~acme/git/build/v4.7.0-rc3/.config
> CONFIG_RANDOMIZE_BASE=y
> # CONFIG_DEBUG_INFO is not set
> [root@jouet ~]#
>
> [root@jouet ~]# grep -w vfs_write /proc/kallsyms
> ffffffffac2404c0 T vfs_write
> [root@jouet ~]# perf probe vfs_write
> vfs_write is out of .text, skip it.
> Error: Failed to add events.
> [root@jouet ~]# perf probe -v vfs_write
> probe-definition(0): vfs_write
> symbol:vfs_write file:(null) line:0 offset:0 return:0 lazy:(null)
> 0 arguments
> Looking at the vmlinux_path (8 entries long)
> Using /lib/modules/4.7.0-rc3/build/vmlinux for symbols
> Could not open debuginfo. Try to use symbols.
> vfs_write is out of .text, skip it.
> Error: Failed to add events. Reason: No such file or directory (Code: -2)
> [root@jouet ~]#
>
> Can you try to test with this config to investigate this problem?

Yes, I guess it missed to get start_text because of KASLR...

>
> We need to improve the error messages, for instance:
>
> "Could not open debuginfo. Try to use symbols."
>
> I think should be rewritten as: "Trying to use kallsyms", no? I.e. if it
> doesn't manage to find a vmlinux file, it will try to use kallsyms as a
> fallback, is that what is happening here?

Let me check that the perf symbol/map object uses kallsyms for kernel.
Anyway, if the target is not the kernel, do we change the message
as "trying to use symbols"?


>
> - Arnaldo


--
Masami Hiramatsu <mhiramat@xxxxxxxxxx>