diff -urN linux-2.4.3/arch/alpha/kernel/irq.c linux-2.4.3.SuSE/arch/alpha/kernel/irq.c --- linux-2.4.3/arch/alpha/kernel/irq.c Fri Feb 9 20:29:44 2001 +++ linux-2.4.3.SuSE/arch/alpha/kernel/irq.c Sat Mar 31 14:38:40 2001 @@ -573,6 +573,9 @@ * SMP cross-CPU interrupts have their own specific * handlers). */ + +#define MAX_ILLEGAL_IRQS 16 + void handle_irq(int irq, struct pt_regs * regs) { @@ -590,9 +593,11 @@ irq_desc_t *desc = irq_desc + irq; struct irqaction * action; unsigned int status; - - if ((unsigned) irq > ACTUAL_NR_IRQS) { + static unsigned int illegal_count=0; + + if ((unsigned) irq > ACTUAL_NR_IRQS && illegal_count < MAX_ILLEGAL_IRQS ) { irq_err_count++; + illegal_count++; printk(KERN_CRIT "device_interrupt: illegal interrupt %d\n", irq); return;