Blackfin: fix sparseirq/kstat_irqs fallout
authorMike Frysinger <vapier@gentoo.org>
Fri, 5 Jun 2009 07:13:11 +0000 (03:13 -0400)
committerMike Frysinger <vapier@gentoo.org>
Fri, 12 Jun 2009 10:15:36 +0000 (06:15 -0400)
The sparseirq changes (d7e51e66) played poorly with the Blackfin irqchip
implementation as we're still using the old hardirq method.  Our bad irq
structure had a NULL kstat_irqs field so when all the common code tries
to increment this field, everything goes big bada boom.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
arch/blackfin/kernel/irqchip.c

index 401bd32..6e31e93 100644 (file)
@@ -59,12 +59,14 @@ static struct irq_chip bad_chip = {
        .unmask = dummy_mask_unmask_irq,
 };
 
+static int bad_stats;
 static struct irq_desc bad_irq_desc = {
        .status = IRQ_DISABLED,
        .chip = &bad_chip,
        .handle_irq = handle_bad_irq,
        .depth = 1,
        .lock = __SPIN_LOCK_UNLOCKED(irq_desc->lock),
+       .kstat_irqs = &bad_stats,
 #ifdef CONFIG_SMP
        .affinity = CPU_MASK_ALL
 #endif