[PATCH 1/2] genirq/chip: Do add_interrupt_randomness() in handle_percpu_devid_irq()

From: Michael Kelley

Date: Thu Apr 02 2026 - 16:25:24 EST


From: Michael Kelley <mhklinux@xxxxxxxxxxx>

handle_percpu_devid_irq() is a version of handle_percpu_irq() but with
the addition of a pointer to a per-cpu devid. However, handle_percpu_irq()
does add_interrupt_randomness(), while handle_percpu_devid_irq() currently
does not. Add the missing add_interrupt_randomness(), as it is needed
when per-cpu interrupts with devid's are used in VMs for interrupts
from the hypervisor.

Signed-off-by: Michael Kelley <mhklinux@xxxxxxxxxxx>
---
kernel/irq/chip.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/kernel/irq/chip.c b/kernel/irq/chip.c
index 6147a07d0127..6c9b1dc4e7d4 100644
--- a/kernel/irq/chip.c
+++ b/kernel/irq/chip.c
@@ -14,6 +14,7 @@
#include <linux/interrupt.h>
#include <linux/kernel_stat.h>
#include <linux/irqdomain.h>
+#include <linux/random.h>

#include <trace/events/irq.h>

@@ -929,6 +930,8 @@ void handle_percpu_devid_irq(struct irq_desc *desc)
enabled ? " and unmasked" : "", irq, cpu);
}

+ add_interrupt_randomness(irq);
+
if (chip->irq_eoi)
chip->irq_eoi(&desc->irq_data);
}
--
2.25.1