diff options
Diffstat (limited to 'kernel/rcutree.h')
-rw-r--r-- | kernel/rcutree.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/kernel/rcutree.h b/kernel/rcutree.h index e6ab31cc28ba..676eecd371d9 100644 --- a/kernel/rcutree.h +++ b/kernel/rcutree.h | |||
@@ -106,6 +106,18 @@ struct rcu_node { | |||
106 | /* blocked_tasks[] array. */ | 106 | /* blocked_tasks[] array. */ |
107 | } ____cacheline_internodealigned_in_smp; | 107 | } ____cacheline_internodealigned_in_smp; |
108 | 108 | ||
109 | /* | ||
110 | * Do a full breadth-first scan of the rcu_node structures for the | ||
111 | * specified rcu_state structure. | ||
112 | */ | ||
113 | #define rcu_for_each_node_breadth_first(rsp, rnp) \ | ||
114 | for ((rnp) = &(rsp)->node[0]; \ | ||
115 | (rnp) < &(rsp)->node[NUM_RCU_NODES]; (rnp)++) | ||
116 | |||
117 | #define rcu_for_each_leaf_node(rsp, rnp) \ | ||
118 | for ((rnp) = (rsp)->level[NUM_RCU_LVLS - 1]; \ | ||
119 | (rnp) < &(rsp)->node[NUM_RCU_NODES]; (rnp)++) | ||
120 | |||
109 | /* Index values for nxttail array in struct rcu_data. */ | 121 | /* Index values for nxttail array in struct rcu_data. */ |
110 | #define RCU_DONE_TAIL 0 /* Also RCU_WAIT head. */ | 122 | #define RCU_DONE_TAIL 0 /* Also RCU_WAIT head. */ |
111 | #define RCU_WAIT_TAIL 1 /* Also RCU_NEXT_READY head. */ | 123 | #define RCU_WAIT_TAIL 1 /* Also RCU_NEXT_READY head. */ |