Commit 4a90a068 authored by Paul E. McKenney's avatar Paul E. McKenney

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: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
parent 4300aa64
...@@ -1913,7 +1913,7 @@ static void __init rcu_init_one(struct rcu_state *rsp) ...@@ -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);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment