commit | d200c03f62301f3372daf35097691f42b85a2e5e | [log] [tgz] |
---|---|---|
author | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | Sat Nov 04 12:51:01 2017 -0700 |
committer | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | Sat Nov 04 12:51:01 2017 -0700 |
tree | da0e97cc5ed25bd3030f91ac282720f4d40cbd76 | |
parent | 68eaace2cbd6adc53650265bc9b2d3f55652b60f [diff] |
sched: Allow RCU-tasks GPs to complete in PREEMPT kernels Given a long in-kernel loop in a CONFIG_PREEMPT=y kernel, the task in question will take a potentially unbounded period of time to arrive at a quiescent state. Use of cond_resched() won't help because this primitive is a no-op in CONFIG_PREEMPT=y kernels. This commit therefore makes CONFIG_PREEMPT=y cond_resched() invoke rcu_note_voluntary_context_switch_lite(). Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>