Re: [RFC PATCH 2/2] powerpc: Only support DYNAMIC_FTRACE not static

From: Steven Rostedt
Date: Fri Mar 16 2018 - 10:42:57 EST


On Sat, 17 Mar 2018 00:46:33 +1100
Michael Ellerman <mpe@xxxxxxxxxxxxxx> wrote:

> We've had dynamic ftrace support for over 9 years since Steve first
> wrote it, all the distros use dynamic, and static is basically
> untested these days, so drop support for static ftrace.
>
> Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
> ---
> arch/powerpc/Kconfig | 1 +
> arch/powerpc/include/asm/ftrace.h | 4 +---
> arch/powerpc/include/asm/module.h | 5 -----
> arch/powerpc/kernel/trace/ftrace.c | 2 --
> arch/powerpc/kernel/trace/ftrace_32.S | 20 ------------------
> arch/powerpc/kernel/trace/ftrace_64.S | 29 --------------------------
> arch/powerpc/kernel/trace/ftrace_64_mprofile.S | 3 ---
> arch/powerpc/kernel/trace/ftrace_64_pg.S | 2 --
> 8 files changed, 2 insertions(+), 64 deletions(-)
>
> diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
> index 73ce5dd07642..23a325df784a 100644
> --- a/arch/powerpc/Kconfig
> +++ b/arch/powerpc/Kconfig
> @@ -189,6 +189,7 @@ config PPC
> select HAVE_DEBUG_STACKOVERFLOW
> select HAVE_DMA_API_DEBUG
> select HAVE_DYNAMIC_FTRACE
> + select HAVE_DYNAMIC_FTRACE_ONLY

I still think adding:

select DYNAMIC_FTRACE if FUNCTION_TRACER

is the better approach.

But I'm all for this patch. I've debated doing the same thing for x86,
but the only reason I have not, was because it's the only way I test
the !DYNAMIC_FTRACE code. I've broken the static function tracing
several times and only find out during my test suite that still tests
that case. But yeah, it would be nice to just nuke static function
tracing for all archs. Perhaps after we finish removing unused archs,
that may be the way to go forward.

-- Steve



> select HAVE_DYNAMIC_FTRACE_WITH_REGS if MPROFILE_KERNEL
> select HAVE_EBPF_JIT if PPC64
> select HAVE_EFFICIENT_UNALIGNED_ACCESS if !(CPU_LITTLE_ENDIAN && POWER7_CPU)