Re: [PATCH v2] ftrace: Match dot symbols when searching functions on ppc64

From: Steven Rostedt
Date: Tue Apr 26 2016 - 09:36:11 EST


On Mon, 25 Apr 2016 18:56:14 -0300
Thiago Jung Bauermann <bauerman@xxxxxxxxxxxxxxxxxx> wrote:

> In the ppc64 big endian ABI, function symbols point to function
> descriptors. The symbols which point to the function entry points
> have a dot in front of the function name. Consequently, when the
> ftrace filter mechanism searches for the symbol corresponding to
> an entry point address, it gets the dot symbol.
>
> As a result, ftrace filter users have to be aware of this ABI detail on
> ppc64 and prepend a dot to the function name when setting the filter.
>
> The perf probe command insulates the user from this by ignoring the dot
> in front of the symbol name when matching function names to symbols,
> but the sysfs interface does not. This patch makes the ftrace filter
> mechanism do the same when searching symbols.
>
> Fixes the following failure in ftracetest's kprobe_ftrace.tc:
>
> .../kprobe_ftrace.tc: line 9: echo: write error: Invalid argument
>
> That failure is on this line of kprobe_ftrace.tc:
>
> echo _do_fork > set_ftrace_filter
>
> This is because there's no _do_fork entry in the functions list:
>
> # cat available_filter_functions | grep _do_fork
> ._do_fork
>
> This change introduces no regressions on the perf and ftracetest
> testsuite results.
>
> Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
> Cc: Ingo Molnar <mingo@xxxxxxxxxx>
> Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
> Cc: linuxppc-dev@xxxxxxxxxxxxxxxx
> Signed-off-by: Thiago Jung Bauermann <bauerman@xxxxxxxxxxxxxxxxxx>
> ---

Acked-by: Steven Rostedt <rostedt@xxxxxxxxxxx>

This can go through the ppc tree.

-- Steve