|
@@ -117,12 +117,11 @@ static int irq_build_affinity_masks(const struct irq_affinity *affd,
|
|
|
*/
|
|
*/
|
|
|
if (numvecs <= nodes) {
|
|
if (numvecs <= nodes) {
|
|
|
for_each_node_mask(n, nodemsk) {
|
|
for_each_node_mask(n, nodemsk) {
|
|
|
- cpumask_copy(masks + curvec, node_to_cpumask[n]);
|
|
|
|
|
- if (++done == numvecs)
|
|
|
|
|
- break;
|
|
|
|
|
|
|
+ cpumask_or(masks + curvec, masks + curvec, node_to_cpumask[n]);
|
|
|
if (++curvec == last_affv)
|
|
if (++curvec == last_affv)
|
|
|
curvec = affd->pre_vectors;
|
|
curvec = affd->pre_vectors;
|
|
|
}
|
|
}
|
|
|
|
|
+ done = numvecs;
|
|
|
goto out;
|
|
goto out;
|
|
|
}
|
|
}
|
|
|
|
|
|