From: Uwe Kleine-König Date: Fri, 25 Apr 2008 13:16:17 +0000 (+0200) Subject: ns9xxx: check for irq lockups X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=a57a0b1d0f66da5ff5dc8f1a5a999f4d2f66090a;p=linux-beck.git ns9xxx: check for irq lockups When I copy-adapted handle_level_irq I skipped note_interrupt because I considered it unimportant. If I had understand its importance I would have saved myself some ours of debugging. Signed-off-by: Uwe Kleine-König --- diff --git a/arch/arm/mach-ns9xxx/irq.c b/arch/arm/mach-ns9xxx/irq.c index ba7a9e4888f0..75f2070dec7b 100644 --- a/arch/arm/mach-ns9xxx/irq.c +++ b/arch/arm/mach-ns9xxx/irq.c @@ -78,6 +78,11 @@ void handle_prio_irq(unsigned int irq, struct irq_desc *desc) action_ret = handle_IRQ_event(irq, action); + /* XXX: There is no direct way to access noirqdebug, so check + * unconditionally for spurious irqs... + * Maybe this function should go to kernel/irq/chip.c? */ + note_interrupt(irq, desc, action_ret); + spin_lock(&desc->lock); desc->status &= ~IRQ_INPROGRESS;