rcu: Break more call_rcu() deadlock involving scheduler and perf
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Tue, 29 Jul 2014 21:50:47 +0000 (14:50 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Sun, 7 Sep 2014 23:18:17 +0000 (16:18 -0700)
commit9fdd3bc9005824704f9802bec7b3e06f5edae434
tree94433c52525a23ecb250aa155130cdd0753d4404
parent66d701ea7e148f8ed8b1497c9159fbf6175d462f
rcu: Break more call_rcu() deadlock involving scheduler and perf

Commit 96d3fd0d315a9 (rcu: Break call_rcu() deadlock involving scheduler
and perf) covered the case where __call_rcu_nocb_enqueue() needs to wake
the rcuo kthread due to the queue being initially empty, but did not
do anything for the case where the queue was overflowing.  This commit
therefore also defers wakeup for the overflow case.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
include/trace/events/rcu.h
kernel/rcu/tree.h
kernel/rcu/tree_plugin.h