Re: [RFA][PATCH 24/27] Blackfin: ftrace: Remove check of obsolete variable function_trace_stop

From: Steven Rostedt
Date: Thu Jun 26 2014 - 13:39:48 EST


On Thu, 26 Jun 2014 12:52:45 -0400
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> From: "Steven Rostedt (Red Hat)" <rostedt@xxxxxxxxxxx>
>
> Nothing sets function_trace_stop to disable function tracing anymore.
> Remove the check for it in the arch code.
>
> [ Please test this on your arch ]

>From the cover letter, you were not Cc'd on.

Anyway, as there is no more reason to set function_trace_stop it is time
to remove it. Unfortunately it's in several archs in assembly. Most of
the assembly looks rather straight forward and I removed them myself.
But I was only able to compile test them (for archs: arm64, metag, and
microblaze I do not have my cross tools set up for them and did not
even compile test it). But I would really love it if people can
download their patch and test it out. You only need the patches that go
against your arch and to really test it, also include the patch titled:

ftrace: Remove check for HAVE_FUNCTION_TRACE_MCOUNT_TEST

Otherwise your arch patch will call the list op that still does the
check. That is, if you want to test suspend and resume on your arch.

As you may see, there are patches to the ftrace infrastructure that
depend on the arch patches being implemented. I removed the
functionality from the infrastructure, then removed it from the archs,
and then finally removed the existence of the function_trace_stop
variable, which would cause the archs to fail to compile if that were
to go first.

If you can test your arch and give me your acked-by, I would appreciate
it. Otherwise, if you need this to go through your tree, I would ask you
to set up a dedicated branch that I can pull from to keep this order
intact.

-- Steve

>
> Cc: Mike Frysinger <vapier@xxxxxxxxxx>
> Signed-off-by: Steven Rostedt <rostedt@xxxxxxxxxxx>
> ---
> arch/blackfin/Kconfig | 1 -
> arch/blackfin/kernel/ftrace-entry.S | 18 ------------------
> 2 files changed, 19 deletions(-)
>
> diff --git a/arch/blackfin/Kconfig b/arch/blackfin/Kconfig
> index f81e7b989fff..ed30699cc635 100644
> --- a/arch/blackfin/Kconfig
> +++ b/arch/blackfin/Kconfig
> @@ -18,7 +18,6 @@ config BLACKFIN
> select HAVE_FTRACE_MCOUNT_RECORD
> select HAVE_FUNCTION_GRAPH_TRACER
> select HAVE_FUNCTION_TRACER
> - select HAVE_FUNCTION_TRACE_MCOUNT_TEST
> select HAVE_IDE
> select HAVE_KERNEL_GZIP if RAMKERNEL
> select HAVE_KERNEL_BZIP2 if RAMKERNEL
> diff --git a/arch/blackfin/kernel/ftrace-entry.S b/arch/blackfin/kernel/ftrace-entry.S
> index 7eed00bbd26d..28d059540424 100644
> --- a/arch/blackfin/kernel/ftrace-entry.S
> +++ b/arch/blackfin/kernel/ftrace-entry.S
> @@ -33,15 +33,6 @@ ENDPROC(__mcount)
> * function will be waiting there. mmmm pie.
> */
> ENTRY(_ftrace_caller)
> -# ifdef CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST
> - /* optional micro optimization: return if stopped */
> - p1.l = _function_trace_stop;
> - p1.h = _function_trace_stop;
> - r3 = [p1];
> - cc = r3 == 0;
> - if ! cc jump _ftrace_stub (bp);
> -# endif
> -
> /* save first/second/third function arg and the return register */
> [--sp] = r2;
> [--sp] = r0;
> @@ -83,15 +74,6 @@ ENDPROC(_ftrace_caller)
>
> /* See documentation for _ftrace_caller */
> ENTRY(__mcount)
> -# ifdef CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST
> - /* optional micro optimization: return if stopped */
> - p1.l = _function_trace_stop;
> - p1.h = _function_trace_stop;
> - r3 = [p1];
> - cc = r3 == 0;
> - if ! cc jump _ftrace_stub (bp);
> -# endif
> -
> /* save third function arg early so we can do testing below */
> [--sp] = r2;
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/