rcu: Add softirq-stall indications to stall-warning messages
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Wed, 6 Mar 2013 21:37:09 +0000 (13:37 -0800)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Wed, 13 Mar 2013 21:43:56 +0000 (14:43 -0700)
commit6231069bdab575fce862ca786f1c0ba5e4e9ba3b
tree95c88dfa505c5ae3b27df9bcffb07edf3dae511f
parent49d0de082c31de34cc896c14eec5f1c2ade0415a
rcu: Add softirq-stall indications to stall-warning messages

If RCU's softirq handler is prevented from executing, an RCU CPU stall
warning can result.  Ways to prevent RCU's softirq handler from executing
include: (1) CPU spinning with interrupts disabled, (2) infinite loop
in some softirq handler, and (3) in -rt kernels, an infinite loop in a
set of real-time threads running at priorities higher than that of RCU's
softirq handler.

Because this situation can be difficult to track down, this commit causes
the count of RCU softirq handler invocations to be printed with RCU
CPU stall warnings.  This information does require some interpretation,
as now documented in Documentation/RCU/stallwarn.txt.

Reported-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Tested-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Documentation/RCU/stallwarn.txt
kernel/rcutree.h
kernel/rcutree_plugin.h