rcu: permit discontiguous cpu_possible_mask CPU numbering
TREE_RCU assumes that CPU numbering is contiguous, but some users need large holes in the numbering to better map to hardware layout. This patch makes TREE_RCU (and TREE_PREEMPT_RCU) tolerate large holes in the CPU numbering. However, NR_CPUS must still be greater than the largest CPU number. Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
This commit is contained in:
parent
4300aa642c
commit
4a90a0681c
|
@ -1913,7 +1913,7 @@ static void __init rcu_init_one(struct rcu_state *rsp)
|
||||||
|
|
||||||
rnp = rsp->level[NUM_RCU_LVLS - 1];
|
rnp = rsp->level[NUM_RCU_LVLS - 1];
|
||||||
for_each_possible_cpu(i) {
|
for_each_possible_cpu(i) {
|
||||||
if (i > rnp->grphi)
|
while (i > rnp->grphi)
|
||||||
rnp++;
|
rnp++;
|
||||||
rsp->rda[i]->mynode = rnp;
|
rsp->rda[i]->mynode = rnp;
|
||||||
rcu_boot_init_percpu_data(i, rsp);
|
rcu_boot_init_percpu_data(i, rsp);
|
||||||
|
|
Loading…
Reference in New Issue