Re: [PATCH v2 3/3] rcu: validate arguments for rcu tracepoints

From: Steven Rostedt
Date: Tue Mar 26 2019 - 11:30:05 EST


On Tue, 26 Mar 2019 08:18:15 -0700
"Paul E. McKenney" <paulmck@xxxxxxxxxxxxx> wrote:

> On Tue, Mar 26, 2019 at 08:13:11PM +0800, Yafang Shao wrote:
> > When CONFIG_RCU_TRACE is not set, all these tracepoints are defined as
> > do-nothing macro.
> > We'd better make those inline functions that take proper arguments.
> >
> > As RCU_TRACE() is defined as do-nothing marco as well when
> > CONFIG_RCU_TRACE is not set, so we can clean it up.
>
> How about this for the commit log?
>
> Unless the CONFIG_RCU_TRACE kconfig option is set, almost all
> of RCU's tracepoints are defined as empty macros. It would
> be better if these tracepoints could instead be empty inline
> functions with proper arguments and type checking. It would
> also be good to get rid of the RCU_TRACE() macro, which
> compiles its argument in CONFIG_RCU_TRACE=y kernels and
> omits them otherwise.
>
> This commit therefore creates a TRACE_EVENT_RCU macro that
> is defined as TRACE_EVENT in CONFIG_RCU_TRACE=y kernels and
> as the new TRACE_EVENT_NOP otherwise, which allows the
> empty macros and the RCU_TRACE() macro to be eliminated.
>
> With that:
>
> Reviewed-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxx>

Yafang,

If you are OK with the above changes, I'll take this patch with the
updated change log.

-- Steve