Re: [PATCH] tracing: Have synthetic event test use raw_smp_processor_id()

From: Masami Hiramatsu
Date: Fri Feb 21 2020 - 05:22:53 EST


On Thu, 20 Feb 2020 21:52:36 -0500
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> On Fri, 21 Feb 2020 09:22:30 +0900
> Masami Hiramatsu <mhiramat@xxxxxxxxxx> wrote:
>
> > On Thu, 20 Feb 2020 16:14:40 -0600
> > Tom Zanussi <zanussi@xxxxxxxxxx> wrote:
> >
> > > Hi Steve,
> > >
> > > On Thu, 2020-02-20 at 16:29 -0500, Steven Rostedt wrote:
> > > > From: "Steven Rostedt (VMware)" <rostedt@xxxxxxxxxxx>
> > > >
> > > > The test code that tests synthetic event creation pushes in as one of
> > > > its
> > > > test fields the current CPU using "smp_processor_id()". As this is
> > > > just
> > > > something to see if the value is correctly passed in, and the actual
> > > > CPU
> > > > used does not matter, use raw_smp_processor_id(), otherwise with
> > > > debug
> > > > preemption enabled, a warning happens as the smp_processor_id() is
> > > > called
> > > > without preemption enabled.
> > > >
> > > > Signed-off-by: Steven Rostedt (VMware) <rostedt@xxxxxxxxxxx>
> > >
> > > Makes sense - I guess it's simpler than Masami's and fine for this
> > > purpose.
> > >
> > > Reviewed-by: Tom Zanussi <zanussi@xxxxxxxxxx>
> >
> > Hmm, can we reserve ring buffer on CPU1 and commit it on CPU2?
> > Shouldn't we disable preemption between them?
> >
>
> I don't think it matters. There's nothing that checks it. And if one
> was concerned about the content of the CPU, one could always enable
> scheduling events and see the task migrate.

Ah, OK I confirmed that the preemption is disabled in ring_buffer_nest_start()
so it should not happen.

Reviewed-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>

Thank you!

>
> -- Steve
>


--
Masami Hiramatsu <mhiramat@xxxxxxxxxx>