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