Re: [RFC] trace_irqsoff: remove redundant reset per-CPU buff

From: Steven Rostedt
Date: Thu Feb 04 2016 - 21:40:53 EST


On Mon, 19 Oct 2015 21:10:26 +0300
Dmitry Safonov <0x7f454c46@xxxxxxxxx> wrote:

> There is no reason to do it twice: from commit b6f11df26fdc28
> ("trace: Call tracing_reset_online_cpus before tracer->init()")
> resetting of per-CPU buffers done before tracer->init() call.
>
> tracer->init() calls {irqs,preempt,preemptirqs}off_tracer_init() and it
> calls __irqsoff_tracer_init(), which resets per-CPU ringbuffer second
> time.
> It's slowpath, but anyway.

Bah, I said I'd look at this and I did. But never added it to my queue.
It's not a big deal as this is the slow path but it makes sense. I knew
there was a patch from you to get but saw the TP_ARGS redefining patch
and thought that was it.

I Cc'd myself on this to make sure I see it again.

-- Steve

>
> Signed-off-by: Dmitry Safonov <0x7f454c46@xxxxxxxxx>
> ---
> kernel/trace/trace_irqsoff.c | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/kernel/trace/trace_irqsoff.c b/kernel/trace/trace_irqsoff.c
> index 8523ea345f2b1a..4ebcb8bfaced24 100644
> --- a/kernel/trace/trace_irqsoff.c
> +++ b/kernel/trace/trace_irqsoff.c
> @@ -612,7 +612,6 @@ static int __irqsoff_tracer_init(struct trace_array *tr)
> irqsoff_trace = tr;
> /* make sure that the tracer is visible */
> smp_wmb();
> - tracing_reset_online_cpus(&tr->trace_buffer);
>
> ftrace_init_array_ops(tr, irqsoff_tracer_call);
>