patch-2.2.8 linux/arch/i386/kernel/visws_apic.c
Next file: linux/arch/m68k/Makefile
Previous file: linux/arch/i386/kernel/time.c
Back to the patch index
Back to the overall index
-  Lines: 17
-  Date:
Thu May  6 16:12:23 1999
-  Orig file: 
v2.2.7/linux/arch/i386/kernel/visws_apic.c
-  Orig date: 
Wed Jan 20 23:14:04 1999
diff -u --recursive --new-file v2.2.7/linux/arch/i386/kernel/visws_apic.c linux/arch/i386/kernel/visws_apic.c
@@ -201,11 +201,13 @@
 	{
 		unsigned int status;
 		/* XXX APIC EOI? */
-		status = desc->status & ~IRQ_REPLAY;
+		status = desc->status & ~(IRQ_REPLAY | IRQ_WAITING);
 		action = NULL;
-		if (!(status & (IRQ_DISABLED | IRQ_INPROGRESS)))
+		if (!(status & (IRQ_DISABLED | IRQ_INPROGRESS))) {
 			action = desc->action;
-		desc->status = status | IRQ_INPROGRESS;
+			status |= IRQ_INPROGRESS;
+		}
+		desc->status = status;
 	}
 	spin_unlock(&irq_controller_lock);
 
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)