OSDN Git Service

rcu: Diagnostics for grace-period startup hangs
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Sun, 22 Apr 2018 03:44:11 +0000 (20:44 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Thu, 12 Jul 2018 21:24:42 +0000 (14:24 -0700)
commit26d950a9451336a6b5abc1c8ca6c21df58e8d89f
treef68a88af62c5dda366ccc760afd57b223f8d5b1a
parent8c42b1f39fdf9fde7cfc4024397255f31a860db6
rcu: Diagnostics for grace-period startup hangs

This commit causes a splat if RCU is idle and a request for a new grace
period is ignored for more than one second.  This splat normally indicates
that some code path asked for a new grace period, but failed to wake up
the RCU grace-period kthread.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
[ paulmck: Fix bug located by Dan Carpenter and his static checker. ]
[ paulmck: Fix self-deadlock bug located 0day test robot. ]
[ paulmck: Disable unless CONFIG_PROVE_RCU=y. ]
kernel/rcu/tree.c
kernel/rcu/tree.h