aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/rcutree.c
diff options
context:
space:
mode:
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>2013-03-10 18:44:52 -0400
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>2013-03-13 17:44:25 -0400
commit81e59494a56cb14f559886c345c4a93fb576bbab (patch)
treeb12b10e2c9f3f6276b9da55bf85c6547b12b7c7b /kernel/rcutree.c
parent6231069bdab575fce862ca786f1c0ba5e4e9ba3b (diff)
rcu: Tone down debugging during boot-up and shutdown.
In some situations, randomly delaying RCU grace-period initialization can cause more trouble than help. This commit therefore restricts this type of RCU self-torture to runtime, giving it a rest during boot and shutdown. Reported-by: Sasha Levin <sasha.levin@oracle.com> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Diffstat (limited to 'kernel/rcutree.c')
-rw-r--r--kernel/rcutree.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/rcutree.c b/kernel/rcutree.c
index 71df6f9f5ce6..0e522504ae37 100644
--- a/kernel/rcutree.c
+++ b/kernel/rcutree.c
@@ -1319,7 +1319,8 @@ static int rcu_gp_init(struct rcu_state *rsp)
1319 rnp->grphi, rnp->qsmask); 1319 rnp->grphi, rnp->qsmask);
1320 raw_spin_unlock_irq(&rnp->lock); 1320 raw_spin_unlock_irq(&rnp->lock);
1321#ifdef CONFIG_PROVE_RCU_DELAY 1321#ifdef CONFIG_PROVE_RCU_DELAY
1322 if ((random32() % (rcu_num_nodes * 8)) == 0) 1322 if ((random32() % (rcu_num_nodes * 8)) == 0 &&
1323 system_state == SYSTEM_RUNNING)
1323 schedule_timeout_uninterruptible(2); 1324 schedule_timeout_uninterruptible(2);
1324#endif /* #ifdef CONFIG_PROVE_RCU_DELAY */ 1325#endif /* #ifdef CONFIG_PROVE_RCU_DELAY */
1325 cond_resched(); 1326 cond_resched();