Messages in this thread Patch in this message | | | From | Angus Chen <> | Subject | [PATCH] genirq: Fix irqs_unhandled in note_interrupt | Date | Tue, 28 Nov 2023 10:10:43 +0800 |
| |
Commit 4f27c00bf80f ("Improve behaviour of spurious IRQ detect") introduced a age of last_unhandled,after irq_count reached 100000, we set irqs_unhandled = 0,but we didn't clear last_unhandled. So we can see the print of irq_spurious_proc_show is not consistent. Like below: root@jmkernel:~# cat /proc/irq/138/spurious count 99998 unhandled 1 last_unhandled 1543930240 ms
root@jmkernel:~# cat /proc/irq/138/spurious count 0 unhandled 0 last_unhandled 1548915240 ms
we can set last_unhandled=1 as a prompting message.
Signed-off-by: Angus Chen <angus.chen@jaguarmicro.com> --- kernel/irq/spurious.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/irq/spurious.c b/kernel/irq/spurious.c index 02b2daf07441..e883df04bdf1 100644 --- a/kernel/irq/spurious.c +++ b/kernel/irq/spurious.c @@ -428,7 +428,7 @@ void note_interrupt(struct irq_desc *desc, irqreturn_t action_ret) mod_timer(&poll_spurious_irq_timer, jiffies + POLL_SPURIOUS_IRQ_INTERVAL); } - desc->irqs_unhandled = 0; + desc->irqs_unhandled = 1; } bool noirqdebug __read_mostly; -- 2.34.1
| |