]> git.karo-electronics.de Git - karo-tx-linux.git/commit
rcu: Add warning for RCU_FAST_NO_HZ timer firing
authorPaul E. McKenney <paul.mckenney@linaro.org>
Mon, 23 Apr 2012 17:06:39 +0000 (10:06 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Wed, 25 Apr 2012 03:55:21 +0000 (20:55 -0700)
commitb33ffa6280ea129c8b7cdbd076ef57bdd4009989
tree5281f9a34512e13e6f4f18a9f2ff9031a28d6d77
parent86df135551bd681a3508d27cf7e34043dee79c81
rcu: Add warning for RCU_FAST_NO_HZ timer firing

RCU_FAST_NO_HZ uses a timer to limit the time that a CPU with callbacks
can remain in dyntick-idle mode.  This timer is cancelled when the CPU
exits idle, and therefore should never fire.  However, if the timer
were migrated to some other CPU for whatever reason (1) the timer could
actually fire and (2) firing on some other CPU would fail to wake up the
CPU with callbacks, possibly resulting in sluggishness or a system hang.

This commit therfore adds a WARN_ON_ONCE() to the timer handler in order
to detect this condition.

Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
kernel/rcutree_plugin.h