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

Joel Fernandes
2020-11-11T14:09:13Z

On Wed, Nov 11, 2020 at 08:49:41AM -0500, Steven Rostedt wrote:
> On Tue, 10 Nov 2020 16:35:30 -0800
> "Paul E. McKenney" <paulmck@kernel.org> 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.

Makes sense.

> > > + 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.

Sure. Last time I tried this for this patch, I ran into some issue. I will
try again and let you know if I need help.

thanks,

- Joel

>
> -- Steve