[PATCH] genirq: Use cpumask_intersects()

From: Costa Shulyupin
Date: Fri Sep 06 2024 - 13:02:10 EST


Replace `cpumask_any_and(a, b) >= nr_cpu_ids`
and `cpumask_any_and(a, b) < nr_cpu_ids`
with the more readable `!cpumask_intersects(a, b)`
and `cpumask_intersects(a, b)`

Signed-off-by: Costa Shulyupin <costa.shul@xxxxxxxxxx>
---
kernel/irq/chip.c | 2 +-
kernel/irq/migration.c | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/kernel/irq/chip.c b/kernel/irq/chip.c
index dc94e0bf2c940..271e9139de77f 100644
--- a/kernel/irq/chip.c
+++ b/kernel/irq/chip.c
@@ -198,7 +198,7 @@ __irq_startup_managed(struct irq_desc *desc, const struct cpumask *aff,

irqd_clr_managed_shutdown(d);

- if (cpumask_any_and(aff, cpu_online_mask) >= nr_cpu_ids) {
+ if (!cpumask_intersects(aff, cpu_online_mask)) {
/*
* Catch code which fiddles with enable_irq() on a managed
* and potentially shutdown IRQ. Chained interrupt
diff --git a/kernel/irq/migration.c b/kernel/irq/migration.c
index 61ca924ef4b4c..eb150afd671f6 100644
--- a/kernel/irq/migration.c
+++ b/kernel/irq/migration.c
@@ -26,7 +26,7 @@ bool irq_fixup_move_pending(struct irq_desc *desc, bool force_clear)
* The outgoing CPU might be the last online target in a pending
* interrupt move. If that's the case clear the pending move bit.
*/
- if (cpumask_any_and(desc->pending_mask, cpu_online_mask) >= nr_cpu_ids) {
+ if (!cpumask_intersects(desc->pending_mask, cpu_online_mask)) {
irqd_clr_move_pending(data);
return false;
}
@@ -74,7 +74,7 @@ void irq_move_masked_irq(struct irq_data *idata)
* For correct operation this depends on the caller
* masking the irqs.
*/
- if (cpumask_any_and(desc->pending_mask, cpu_online_mask) < nr_cpu_ids) {
+ if (cpumask_intersects(desc->pending_mask, cpu_online_mask)) {
int ret;

ret = irq_do_set_affinity(data, desc->pending_mask, false);
--
2.45.0