summaryrefslogtreecommitdiffstats
path: root/kernel/rcu
diff options
context:
space:
mode:
authorPeter Zijlstra (Intel) <peterz@infradead.org>2017-07-12 07:59:54 -0700
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>2017-08-17 07:26:24 -0700
commit3a60799269daff5ed254a9b473a8db6f0f5c6bd9 (patch)
treef2e5e4b345aa687db597864c4c8d85d6ce183ebf /kernel/rcu
parent2dee9404fa8c4384453a5f3a15ad74ab9480f2d6 (diff)
downloadlinux-3a60799269daff5ed254a9b473a8db6f0f5c6bd9.tar.bz2
rcu: Make rcu_idle_enter() rely on callers disabling irqs
All callers to rcu_idle_enter() have irqs disabled, so there is no point in rcu_idle_enter disabling them again. This commit therefore replaces the irq disabling with a RCU_LOCKDEP_WARN(). Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Diffstat (limited to 'kernel/rcu')
-rw-r--r--kernel/rcu/tree.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
index ac2617d857a3..76f88b65961f 100644
--- a/kernel/rcu/tree.c
+++ b/kernel/rcu/tree.c
@@ -843,11 +843,8 @@ static void rcu_eqs_enter(bool user)
*/
void rcu_idle_enter(void)
{
- unsigned long flags;
-
- local_irq_save(flags);
+ RCU_LOCKDEP_WARN(!irqs_disabled(), "rcu_idle_enter() invoked with irqs enabled!!!");
rcu_eqs_enter(false);
- local_irq_restore(flags);
}
EXPORT_SYMBOL_GPL(rcu_idle_enter);