patch-2.3.23 linux/arch/ppc/kernel/irq.c

Next file: linux/arch/ppc/kernel/m8xx_setup.c
Previous file: linux/arch/ppc/kernel/idle.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.3.22/linux/arch/ppc/kernel/irq.c linux/arch/ppc/kernel/irq.c
@@ -296,15 +296,19 @@
 	irq = ppc_md.get_irq( regs );
 	if ( irq < 0 )
 	{
-                printk(KERN_DEBUG "Bogus interrupt %d from PC = %lx\n",
-                       irq, regs->nip);
-                ppc_spurious_interrupts++;
-		return;
+		/* -2 means ignore, already handled */
+		if (irq != -2) {
+			printk(KERN_DEBUG "Bogus interrupt %d from PC = %lx\n",
+			       irq, regs->nip);
+			ppc_spurious_interrupts++;
+		}
+		goto out;
 	}
 	ppc_irq_dispatch_handler( regs, irq );
 	if ( ppc_md.post_irq )
 		ppc_md.post_irq( irq );
-	
+
+ out:	
         hardirq_exit( cpu );
 }
 

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)