summaryrefslogtreecommitdiff
path: root/arch/powerpc/include/asm/hardirq.h
diff options
context:
space:
mode:
authorAnton Blanchard <anton@samba.org>2010-01-31 23:34:36 +0300
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2010-02-17 06:02:49 +0300
commit17081102a6e0fe32cf47cdbdf8f2e9ab55273b08 (patch)
tree6bbe3f22d4414598cdfdb69510f0679b90c68175 /arch/powerpc/include/asm/hardirq.h
parent89713ed10815401a1bfe12e3a076b64048381b56 (diff)
downloadlinux-17081102a6e0fe32cf47cdbdf8f2e9ab55273b08.tar.xz
powerpc: Convert global "BAD" interrupt to per cpu spurious
I often get asked if BAD interrupts are really bad. On some boxes (eg IBM machines running a hypervisor) there are valid cases where are presented with an interrupt that is not for us. These cases are common enough to show up as thousands of BAD interrupts a day. Tone them down by calling them spurious. Since they can be a significant cause of OS jitter, we may as well log them per cpu so we know where they are occurring. Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/include/asm/hardirq.h')
-rw-r--r--arch/powerpc/include/asm/hardirq.h4
1 files changed, 1 insertions, 3 deletions
diff --git a/arch/powerpc/include/asm/hardirq.h b/arch/powerpc/include/asm/hardirq.h
index cd2d4be882aa..3147a2970125 100644
--- a/arch/powerpc/include/asm/hardirq.h
+++ b/arch/powerpc/include/asm/hardirq.h
@@ -9,6 +9,7 @@ typedef struct {
unsigned int timer_irqs;
unsigned int pmu_irqs;
unsigned int mce_exceptions;
+ unsigned int spurious_irqs;
} ____cacheline_aligned irq_cpustat_t;
DECLARE_PER_CPU_SHARED_ALIGNED(irq_cpustat_t, irq_stat);
@@ -25,7 +26,4 @@ static inline void ack_bad_irq(unsigned int irq)
extern u64 arch_irq_stat_cpu(unsigned int cpu);
#define arch_irq_stat_cpu arch_irq_stat_cpu
-extern u64 arch_irq_stat(void);
-#define arch_irq_stat arch_irq_stat
-
#endif /* _ASM_POWERPC_HARDIRQ_H */