Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-29 Thread Paul E. McKenney
On Thu, Aug 29, 2019 at 09:20:36PM -0400, Joel Fernandes wrote: > On Thu, Aug 29, 2019 at 05:47:56PM -0700, Paul E. McKenney wrote: > [snip] > > > > > Paul, also what what happens in the following scenario: > > > > > > > > > > CPU0 CPU1 > > > > > >

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-29 Thread Joel Fernandes
On Thu, Aug 29, 2019 at 05:47:56PM -0700, Paul E. McKenney wrote: [snip] > > > > Paul, also what what happens in the following scenario: > > > > > > > > CPU0 CPU1 > > > > > > > > A syscall causes rcu_eqs_exit() > > > > rcu_read_lock(); > > > >

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-29 Thread Paul E. McKenney
On Thu, Aug 29, 2019 at 01:14:54PM -0400, Joel Fernandes wrote: > On Thu, Aug 29, 2019 at 09:13:01AM -0700, Paul E. McKenney wrote: > > On Thu, Aug 29, 2019 at 11:13:25AM -0400, Joel Fernandes wrote: > > > On Thu, Aug 29, 2019 at 10:43:55AM -0400, Joel Fernandes wrote: > > > > On Wed, Aug 28, 2019

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-29 Thread Paul E. McKenney
On Thu, Aug 29, 2019 at 03:00:46PM -0400, Joel Fernandes wrote: > Hi Paul, > > On Thu, Aug 29, 2019 at 09:54:07AM -0700, Paul E. McKenney wrote: > > On Thu, Aug 29, 2019 at 09:21:46AM -0700, Andy Lutomirski wrote: > > > On Thu, Aug 29, 2019 at 9:10 AM Paul E. McKenney > > > wrote: > > > > > > >

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-29 Thread Joel Fernandes
Hi Paul, On Thu, Aug 29, 2019 at 09:54:07AM -0700, Paul E. McKenney wrote: > On Thu, Aug 29, 2019 at 09:21:46AM -0700, Andy Lutomirski wrote: > > On Thu, Aug 29, 2019 at 9:10 AM Paul E. McKenney wrote: > > > > > > On Thu, Aug 29, 2019 at 10:43:55AM -0400, Joel Fernandes wrote: > > > > > > [ . . .

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-29 Thread Joel Fernandes
On Thu, Aug 29, 2019 at 09:13:01AM -0700, Paul E. McKenney wrote: > On Thu, Aug 29, 2019 at 11:13:25AM -0400, Joel Fernandes wrote: > > On Thu, Aug 29, 2019 at 10:43:55AM -0400, Joel Fernandes wrote: > > > On Wed, Aug 28, 2019 at 08:43:36PM -0700, Paul E. McKenney wrote: > > > [snip] > > > > > > >

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-29 Thread Paul E. McKenney
On Thu, Aug 29, 2019 at 09:21:46AM -0700, Andy Lutomirski wrote: > On Thu, Aug 29, 2019 at 9:10 AM Paul E. McKenney wrote: > > > > On Thu, Aug 29, 2019 at 10:43:55AM -0400, Joel Fernandes wrote: > > > > [ . . . ] > > > > > Paul, do we also nuke rcu_eqs_special_set()? Currently I don't see anyone

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-29 Thread Paul E. McKenney
On Thu, Aug 29, 2019 at 09:59:07AM -0400, Joel Fernandes wrote: > On Wed, Aug 28, 2019 at 08:43:36PM -0700, Paul E. McKenney wrote: > [snip] > > On the tracing patch... That patch might be a good idea regardless, > > but I bet that the reason that you felt the sudden need for it was due > > to th

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-29 Thread Andy Lutomirski
On Thu, Aug 29, 2019 at 9:10 AM Paul E. McKenney wrote: > > On Thu, Aug 29, 2019 at 10:43:55AM -0400, Joel Fernandes wrote: > > [ . . . ] > > > Paul, do we also nuke rcu_eqs_special_set()? Currently I don't see anyone > > using it. And also remove the bottom most bit of dynticks? > > > > Also wha

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-29 Thread Paul E. McKenney
On Thu, Aug 29, 2019 at 11:13:25AM -0400, Joel Fernandes wrote: > On Thu, Aug 29, 2019 at 10:43:55AM -0400, Joel Fernandes wrote: > > On Wed, Aug 28, 2019 at 08:43:36PM -0700, Paul E. McKenney wrote: > > [snip] > > > > > > > This change is not fixing a bug, so there is no need for an > > > > > > >

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-29 Thread Paul E. McKenney
On Thu, Aug 29, 2019 at 10:43:55AM -0400, Joel Fernandes wrote: [ . . . ] > Paul, do we also nuke rcu_eqs_special_set()? Currently I don't see anyone > using it. And also remove the bottom most bit of dynticks? > > Also what happens if a TLB flush broadcast is needed? Do we IPI nohz or idle > C

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-29 Thread Joel Fernandes
On Thu, Aug 29, 2019 at 10:43:55AM -0400, Joel Fernandes wrote: > On Wed, Aug 28, 2019 at 08:43:36PM -0700, Paul E. McKenney wrote: > [snip] > > > > > > This change is not fixing a bug, so there is no need for an > > > > > > emergency fix, > > > > > > and thus no point in additional churn. I unde

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-29 Thread Joel Fernandes
On Wed, Aug 28, 2019 at 08:43:36PM -0700, Paul E. McKenney wrote: [snip] > > > > > This change is not fixing a bug, so there is no need for an emergency > > > > > fix, > > > > > and thus no point in additional churn. I understand that it is a bit > > > > > annoying to code and test something and

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-29 Thread Joel Fernandes
On Wed, Aug 28, 2019 at 08:43:36PM -0700, Paul E. McKenney wrote: [snip] > On the tracing patch... That patch might be a good idea regardless, > but I bet that the reason that you felt the sudden need for it was due > to the loss of information in your eventual ->dynticks_nesting field. > After a

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-28 Thread Paul E. McKenney
On Wed, Aug 28, 2019 at 09:51:55PM -0400, Joel Fernandes wrote: > On Wed, Aug 28, 2019 at 04:12:47PM -0700, Paul E. McKenney wrote: > > On Wed, Aug 28, 2019 at 06:14:44PM -0400, Joel Fernandes wrote: > > > On Wed, Aug 28, 2019 at 03:01:08PM -0700, Paul E. McKenney wrote: > > > > On Wed, Aug 28, 201

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-28 Thread Joel Fernandes
On Wed, Aug 28, 2019 at 04:12:47PM -0700, Paul E. McKenney wrote: > On Wed, Aug 28, 2019 at 06:14:44PM -0400, Joel Fernandes wrote: > > On Wed, Aug 28, 2019 at 03:01:08PM -0700, Paul E. McKenney wrote: > > > On Wed, Aug 28, 2019 at 05:42:41PM -0400, Joel Fernandes wrote: > > > > On Wed, Aug 28, 201

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-28 Thread Paul E. McKenney
On Wed, Aug 28, 2019 at 06:14:44PM -0400, Joel Fernandes wrote: > On Wed, Aug 28, 2019 at 03:01:08PM -0700, Paul E. McKenney wrote: > > On Wed, Aug 28, 2019 at 05:42:41PM -0400, Joel Fernandes wrote: > > > On Wed, Aug 28, 2019 at 02:19:04PM -0700, Paul E. McKenney wrote: > > > > On Wed, Aug 28, 201

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-28 Thread Joel Fernandes
On Wed, Aug 28, 2019 at 03:01:08PM -0700, Paul E. McKenney wrote: > On Wed, Aug 28, 2019 at 05:42:41PM -0400, Joel Fernandes wrote: > > On Wed, Aug 28, 2019 at 02:19:04PM -0700, Paul E. McKenney wrote: > > > On Wed, Aug 28, 2019 at 05:05:25PM -0400, Joel Fernandes wrote: > > > > On Wed, Aug 28, 201

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-28 Thread Paul E. McKenney
On Wed, Aug 28, 2019 at 05:42:41PM -0400, Joel Fernandes wrote: > On Wed, Aug 28, 2019 at 02:19:04PM -0700, Paul E. McKenney wrote: > > On Wed, Aug 28, 2019 at 05:05:25PM -0400, Joel Fernandes wrote: > > > On Wed, Aug 28, 2019 at 01:23:30PM -0700, Paul E. McKenney wrote: > > > > On Mon, Aug 26, 201

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-28 Thread Joel Fernandes
On Wed, Aug 28, 2019 at 02:19:04PM -0700, Paul E. McKenney wrote: > On Wed, Aug 28, 2019 at 05:05:25PM -0400, Joel Fernandes wrote: > > On Wed, Aug 28, 2019 at 01:23:30PM -0700, Paul E. McKenney wrote: > > > On Mon, Aug 26, 2019 at 09:33:54PM -0400, Joel Fernandes (Google) wrote: > > > > The dyntic

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-28 Thread Paul E. McKenney
On Wed, Aug 28, 2019 at 05:05:25PM -0400, Joel Fernandes wrote: > On Wed, Aug 28, 2019 at 01:23:30PM -0700, Paul E. McKenney wrote: > > On Mon, Aug 26, 2019 at 09:33:54PM -0400, Joel Fernandes (Google) wrote: > > > The dynticks_nmi_nesting counter serves 4 purposes: > > > > > > (a) rcu_is_cp

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-28 Thread Joel Fernandes
On Wed, Aug 28, 2019 at 01:23:30PM -0700, Paul E. McKenney wrote: > On Mon, Aug 26, 2019 at 09:33:54PM -0400, Joel Fernandes (Google) wrote: > > The dynticks_nmi_nesting counter serves 4 purposes: > > > > (a) rcu_is_cpu_rrupt_from_idle() needs to be able to detect first > > interru

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-28 Thread Paul E. McKenney
On Mon, Aug 26, 2019 at 09:33:54PM -0400, Joel Fernandes (Google) wrote: > The dynticks_nmi_nesting counter serves 4 purposes: > > (a) rcu_is_cpu_rrupt_from_idle() needs to be able to detect first > interrupt nesting level. > > (b) We need to detect half-interrupts till we a

Re: [RFC v1 2/2] rcu/tree: Remove dynticks_nmi_nesting counter

2019-08-26 Thread Joel Fernandes
On Mon, Aug 26, 2019 at 9:34 PM Joel Fernandes (Google) wrote: > > The dynticks_nmi_nesting counter serves 4 purposes: > And actually, I meant 3 purposes ;-) :-P thanks, - Joel > (a) rcu_is_cpu_rrupt_from_idle() needs to be able to detect first > interrupt nesting level. > >