]> git.karo-electronics.de Git - linux-beck.git/commit
rcu: Make rcu_sleep_check() also check rcu_lock_map
authorPaul E. McKenney <paul.mckenney@linaro.org>
Thu, 12 Jan 2012 21:49:19 +0000 (13:49 -0800)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Tue, 21 Feb 2012 17:03:46 +0000 (09:03 -0800)
commit50406b98b6372e7de21d903d2cf3914e9d64e094
treed53077fbca12714e1af5f9982e08efb923a550c6
parentc44e2cddacc2cf299186bad5697d738ea19668b7
rcu: Make rcu_sleep_check() also check rcu_lock_map

Although it is OK to be preempted in an RCU read-side critical section
for TREE_PREEMPT_RCU, it is definitely not OK to be preempted, block,
or might_sleep() within an RCU read-side critical section for TREE_RCU.
Unfortunately, rcu_might_sleep() currently only checks for RCU-bh and
RCU-sched read-side critical sections.  This commit therefore makes
rcu_might_sleep() check for RCU read-side critical sections, but only
in TREE_RCU builds.

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