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

2020-11-11 Thread Joel Fernandes
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" wrote: > > > > +void __trace_rcu_segcb_stats(struct rcu_segcblist *rsclp, const char > > > *context) > > > +{ > > > + int cbs[RCU_CBLIST_NSEGS]; > > > + unsigned long

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

2020-11-11 Thread Steven Rostedt
On Tue, 10 Nov 2020 16:35:30 -0800 "Paul E. McKenney" 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()) > > +

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

2020-11-10 Thread Paul E. McKenney
On Tue, Nov 03, 2020 at 09:26:00AM -0500, Joel Fernandes (Google) wrote: > Track how the segcb list changes before/after acceleration, during > queuing and during dequeuing. > > This has proved useful to discover an optimization to avoid unwanted GP > requests when there are no callbacks

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

2020-11-06 Thread Joel Fernandes
On Wed, Nov 04, 2020 at 03:33:14PM +0100, Frederic Weisbecker wrote: > On Wed, Nov 04, 2020 at 06:08:07AM -0800, Paul E. McKenney wrote: > > On Tue, Nov 03, 2020 at 04:17:31PM +0100, Frederic Weisbecker wrote: > > > On Tue, Nov 03, 2020 at 09:26:00AM -0500, Joel Fernandes (Google) wrote: > > > >

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

2020-11-04 Thread Joel Fernandes
On Wed, Nov 04, 2020 at 07:10:17PM +0530, Neeraj Upadhyay wrote: > > > On 11/3/2020 7:56 PM, Joel Fernandes (Google) wrote: > > Track how the segcb list changes before/after acceleration, during > > queuing and during dequeuing. > > > > This has proved useful to discover an optimization to

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

2020-11-04 Thread Frederic Weisbecker
On Wed, Nov 04, 2020 at 06:08:07AM -0800, Paul E. McKenney wrote: > On Tue, Nov 03, 2020 at 04:17:31PM +0100, Frederic Weisbecker wrote: > > On Tue, Nov 03, 2020 at 09:26:00AM -0500, Joel Fernandes (Google) wrote: > > > +/* > > > + * Return how many CBs each segment along with their gp_seq values.

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

2020-11-04 Thread Paul E. McKenney
On Tue, Nov 03, 2020 at 04:17:31PM +0100, Frederic Weisbecker wrote: > On Tue, Nov 03, 2020 at 09:26:00AM -0500, Joel Fernandes (Google) wrote: > > +/* > > + * Return how many CBs each segment along with their gp_seq values. > > + * > > + * This function is O(N) where N is the number of segments.

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

2020-11-04 Thread Neeraj Upadhyay
On 11/3/2020 7:56 PM, Joel Fernandes (Google) wrote: Track how the segcb list changes before/after acceleration, during queuing and during dequeuing. This has proved useful to discover an optimization to avoid unwanted GP requests when there are no callbacks accelerated. The overhead is

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

2020-11-03 Thread Frederic Weisbecker
On Tue, Nov 03, 2020 at 09:26:00AM -0500, Joel Fernandes (Google) wrote: > +/* > + * Return how many CBs each segment along with their gp_seq values. > + * > + * This function is O(N) where N is the number of segments. Only used from > + * tracing code which is usually disabled in production. > +

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

2020-11-03 Thread Joel Fernandes (Google)
Track how the segcb list changes before/after acceleration, during queuing and during dequeuing. This has proved useful to discover an optimization to avoid unwanted GP requests when there are no callbacks accelerated. The overhead is minimal as each segment's length is now stored in the