summaryrefslogtreecommitdiffstats
path: root/kernel/rcu/tree.h
diff options
context:
space:
mode:
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>2017-06-27 07:44:06 -0700
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>2017-07-25 13:04:49 -0700
commitf2dbe4a562d4f17cc1bad3e36a9d1ccb19c86604 (patch)
treead3875857f1d0e0bdc890ad04afd53259e8e2a05 /kernel/rcu/tree.h
parent21cc248384aeb0375b3cac164c276c78c503291a (diff)
downloadlinux-f2dbe4a562d4f17cc1bad3e36a9d1ccb19c86604.tar.gz
linux-f2dbe4a562d4f17cc1bad3e36a9d1ccb19c86604.tar.bz2
linux-f2dbe4a562d4f17cc1bad3e36a9d1ccb19c86604.zip
rcu: Localize rcu_state ->orphan_pend and ->orphan_done
Given that the rcu_state structure's >orphan_pend and ->orphan_done fields are used only during migration of callbacks from the recently offlined CPU to a surviving CPU, if rcu_send_cbs_to_orphanage() and rcu_adopt_orphan_cbs() are combined, these fields can become local variables in the combined function. This commit therefore combines rcu_send_cbs_to_orphanage() and rcu_adopt_orphan_cbs() into a new rcu_segcblist_merge() function and removes the ->orphan_pend and ->orphan_done fields. Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Diffstat (limited to 'kernel/rcu/tree.h')
-rw-r--r--kernel/rcu/tree.h6
1 files changed, 0 insertions, 6 deletions
diff --git a/kernel/rcu/tree.h b/kernel/rcu/tree.h
index 62b1d0b0d47c..b99f31c2b0c3 100644
--- a/kernel/rcu/tree.h
+++ b/kernel/rcu/tree.h
@@ -348,12 +348,6 @@ struct rcu_state {
/* End of fields guarded by root rcu_node's lock. */
- struct rcu_cblist orphan_pend; /* Orphaned callbacks that */
- /* need a grace period. */
- struct rcu_cblist orphan_done; /* Orphaned callbacks that */
- /* are ready to invoke. */
- /* (Contains counts.) */
-
struct mutex barrier_mutex; /* Guards barrier fields. */
atomic_t barrier_cpu_count; /* # CPUs waiting on. */
struct completion barrier_completion; /* Wake at barrier end. */