Re: [PATCH v9 4/7] rcu/trace: Add tracing for how segcb list changes

From: Steven Rostedt
Date: Wed Nov 11 2020 - 08:50:11 EST


On Tue, 10 Nov 2020 16:35:30 -0800
"Paul E. McKenney" <paulmck@xxxxxxxxxx> wrote:

> > +void __trace_rcu_segcb_stats(struct rcu_segcblist *rsclp, const char *context)
> > +{
> > + int cbs[RCU_CBLIST_NSEGS];
> > + unsigned long gps[RCU_CBLIST_NSEGS];
> > +
> > + if (!trace_rcu_segcb_stats_enabled())
> > + return;
>
> Can't you rely on the trace system to enable and disable this trace
> event? If the thought is to save instructions, then moving all this
> into TP_fast_assign() enables the trace system to deal with that as well.
>
> > + rcu_segcblist_countseq(rsclp, cbs, gps);
> > +
> > + trace_rcu_segcb_stats(context, cbs, gps);
> > +}
> > +#endif

Yeah, I agree with Paul. I think it is possible to move this all into the
TP_fast_assign. If you have trouble doing so, let me know.

-- Steve