rcu: Don't bother affinitying rcub kthreads away from offline CPUs
When rcu_boost_kthread_setaffinity() sees that all CPUs for a given
rcu_node structure are now offline, it affinities the corresponding
RCU-boost ("rcub") kthread away from those CPUs. This is pointless
because the kthread cannot run on those offline CPUs in any case.
This commit therefore removes this unneeded code.
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
This commit is contained in:
@@ -1322,12 +1322,8 @@ static void rcu_boost_kthread_setaffinity(struct rcu_node *rnp, int outgoingcpu)
|
|||||||
for (cpu = rnp->grplo; cpu <= rnp->grphi; cpu++, mask >>= 1)
|
for (cpu = rnp->grplo; cpu <= rnp->grphi; cpu++, mask >>= 1)
|
||||||
if ((mask & 0x1) && cpu != outgoingcpu)
|
if ((mask & 0x1) && cpu != outgoingcpu)
|
||||||
cpumask_set_cpu(cpu, cm);
|
cpumask_set_cpu(cpu, cm);
|
||||||
if (cpumask_weight(cm) == 0) {
|
if (cpumask_weight(cm) == 0)
|
||||||
cpumask_setall(cm);
|
cpumask_setall(cm);
|
||||||
for (cpu = rnp->grplo; cpu <= rnp->grphi; cpu++)
|
|
||||||
cpumask_clear_cpu(cpu, cm);
|
|
||||||
WARN_ON_ONCE(cpumask_weight(cm) == 0);
|
|
||||||
}
|
|
||||||
set_cpus_allowed_ptr(t, cm);
|
set_cpus_allowed_ptr(t, cm);
|
||||||
free_cpumask_var(cm);
|
free_cpumask_var(cm);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user