summaryrefslogtreecommitdiffstats
path: root/kernel/rcutree.h
diff options
context:
space:
mode:
authorPaul E. McKenney <paul.mckenney@linaro.org>2012-05-29 05:18:53 -0700
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>2012-07-02 12:33:22 -0700
commit7be7f0be907224445acc62b3884c892f38b7ff40 (patch)
tree9802c524d04374e6a4e5c5b9d3a0d3c9085ef2fd /kernel/rcutree.h
parent7db74df88b52844f4e966901e2972bba725e6766 (diff)
downloadlinux-7be7f0be907224445acc62b3884c892f38b7ff40.tar.gz
linux-7be7f0be907224445acc62b3884c892f38b7ff40.tar.bz2
linux-7be7f0be907224445acc62b3884c892f38b7ff40.zip
rcu: Move rcu_barrier_mutex to rcu_state structure
In order to allow each RCU flavor to concurrently execute its rcu_barrier() function, it is necessary to move the relevant state to the rcu_state structure. This commit therefore moves the rcu_barrier_mutex global variable to a new ->barrier_mutex field in the rcu_state structure. Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Diffstat (limited to 'kernel/rcutree.h')
-rw-r--r--kernel/rcutree.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/rcutree.h b/kernel/rcutree.h
index d1ca4424122b..7641aec3e59c 100644
--- a/kernel/rcutree.h
+++ b/kernel/rcutree.h
@@ -400,6 +400,7 @@ struct rcu_state {
struct task_struct *rcu_barrier_in_progress;
/* Task doing rcu_barrier(), */
/* or NULL if no barrier. */
+ struct mutex barrier_mutex; /* Guards barrier fields. */
atomic_t barrier_cpu_count; /* # CPUs waiting on. */
struct completion barrier_completion; /* Wake at barrier end. */
raw_spinlock_t fqslock; /* Only one task forcing */