]> git.karo-electronics.de Git - karo-tx-linux.git/commit
rcu: Detect illegal rcu dereference in extended quiescent state
authorFrederic Weisbecker <fweisbec@gmail.com>
Thu, 23 Jun 2011 23:12:38 +0000 (01:12 +0200)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Tue, 13 Sep 2011 15:46:38 +0000 (08:46 -0700)
commit607694e497a8a3c0d189d6e2838e6d7e4f839255
treefe7e5a2c487675be78c3e49687938bdc79b40c30
parent02bfde5587941bd3fa4ead5d5884063d9a93c9ff
rcu: Detect illegal rcu dereference in extended quiescent state

Report that none of the rcu read lock maps are held while in an RCU
extended quiescent state (in this case, the RCU extended quiescent state
is dyntick-idle mode). This helps detect any use of rcu_dereference()
and friends from within dyntick-idle mode.

Uses of RCU from within dyntick-idle mode are totally ignored by
RCU, hence the importance of these checks.

Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Lai Jiangshan <laijs@cn.fujitsu.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
include/linux/rcupdate.h
kernel/rcupdate.c
kernel/rcutiny.c
kernel/rcutree.c