From: Paul E. McKenney Date: Tue, 1 Jul 2014 18:26:57 +0000 (-0700) Subject: rcu: Provide cond_resched_rcu_qs() to force quiescent states in long loops X-Git-Tag: fixes-against-v3.18-rc2~103^2~1^2~15^2~16 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bde6c3aa993066acb0d6ce32ecabe03b9d5df92d;p=pandora-kernel.git rcu: Provide cond_resched_rcu_qs() to force quiescent states in long loops RCU-tasks requires the occasional voluntary context switch from CPU-bound in-kernel tasks. In some cases, this requires instrumenting cond_resched(). However, there is some reluctance to countenance unconditionally instrumenting cond_resched() (see http://lwn.net/Articles/603252/), so this commit creates a separate cond_resched_rcu_qs() that may be used in place of cond_resched() in locations prone to long-duration in-kernel looping. This commit currently instruments only RCU-tasks. Future possibilities include also instrumenting RCU, RCU-bh, and RCU-sched in order to reduce IPI usage. Signed-off-by: Paul E. McKenney --- Reading git-diff-tree failed