rcu: Move rcu_nocb_gp_get() to ->gp_seq
This commit makes rcu_try_advance_all_cbs() use ->gp_seq. It uses rcu_seq_ctr() in order to shift away the state bits, so that the low-order bits of the result may safely be used to index ->nocb_gp_wq[]. Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
This commit is contained in:
parent
03c8cb765a
commit
e0da2374c3
|
@ -1852,7 +1852,7 @@ static void rcu_nocb_gp_cleanup(struct swait_queue_head *sq)
|
||||||
|
|
||||||
static struct swait_queue_head *rcu_nocb_gp_get(struct rcu_node *rnp)
|
static struct swait_queue_head *rcu_nocb_gp_get(struct rcu_node *rnp)
|
||||||
{
|
{
|
||||||
return &rnp->nocb_gp_wq[rnp->completed & 0x1];
|
return &rnp->nocb_gp_wq[rcu_seq_ctr(rnp->gp_seq) & 0x1];
|
||||||
}
|
}
|
||||||
|
|
||||||
static void rcu_init_one_nocb(struct rcu_node *rnp)
|
static void rcu_init_one_nocb(struct rcu_node *rnp)
|
||||||
|
|
Loading…
Reference in New Issue