OSDN Git Service

rcu: Make rcu_read_unlock_special() propagate ->qsmaskinit bit clearing
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Fri, 31 Oct 2014 19:05:04 +0000 (12:05 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Tue, 6 Jan 2015 19:02:43 +0000 (11:02 -0800)
commitb6a932d1d9840727eee619d455bdeeedaa205be9
treebb1f9962187de759feb932378dd1299ec9488ff0
parent8af3a5e78cfb63abe8813743946b7bd5a8a3134c
rcu: Make rcu_read_unlock_special() propagate ->qsmaskinit bit clearing

This commit causes rcu_read_unlock_special() to propagate ->qsmaskinit
bit clearing up the rcu_node tree once a given rcu_node structure's
blkd_tasks list becomes empty.  This is the final commit in preparation
for the rework of RCU priority boosting:  It enables preempted tasks to
remain queued on their rcu_node structure even after all of that rcu_node
structure's CPUs have gone offline.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
kernel/rcu/tree.c
kernel/rcu/tree_plugin.h