On Tue, Jul 11, 2017 at 11:09:31AM -0700, Paul E. McKenney wrote: > On Tue, Jul 11, 2017 at 06:34:22PM +0200, Peter Zijlstra wrote:
> > But I think we can at the very least do this; it only gets called from > > kernel/sched/idle.c and both callsites have IRQs explicitly disabled by > > that point. > > > > > > diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c > > index 51d4c3acf32d..dccf2dc8155a 100644 > > --- a/kernel/rcu/tree.c > > +++ b/kernel/rcu/tree.c > > @@ -843,13 +843,8 @@ static void rcu_eqs_enter(bool user) > > */ > > void rcu_idle_enter(void) > > { > > - unsigned long flags; > > - > > - local_irq_save(flags); > > With this addition, I am all for it: > > RCU_LOCKDEP_WARN(!irqs_disabled(), "rcu_idle_enter() invoked with irqs > enabled!!!"); > > If you are OK with this addition, may I please have your Signed-off-by? Sure, Signed-off-by: Peter Zijlstra (Intel) <pet...@infradead.org> > > > rcu_eqs_enter(false); > > - local_irq_restore(flags); > > } > > -EXPORT_SYMBOL_GPL(rcu_idle_enter); > > > > #ifdef CONFIG_NO_HZ_FULL > > /** > > >