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>
1 file changed