patch-2.2.13 linux/arch/i386/kernel/irq.c
Next file: linux/arch/i386/kernel/process.c
Previous file: linux/arch/i386/kernel/io_apic.c
Back to the patch index
Back to the overall index
- Lines: 23
- Date:
Tue Oct 19 17:14:00 1999
- Orig file:
v2.2.12/linux/arch/i386/kernel/irq.c
- Orig date:
Mon Aug 9 16:05:54 1999
diff -u --recursive --new-file v2.2.12/linux/arch/i386/kernel/irq.c linux/arch/i386/kernel/irq.c
@@ -449,6 +449,7 @@
atomic_t global_bh_count;
atomic_t global_bh_lock;
+spinlock_t i386_bh_lock = SPIN_LOCK_UNLOCKED;
/*
* "global_cli()" is a special case, in that it can hold the
@@ -726,10 +727,11 @@
status = 1; /* Force the "do bottom halves" bit */
- if (!(action->flags & SA_INTERRUPT))
- __sti();
-
do {
+ if (!(action->flags & SA_INTERRUPT))
+ __sti();
+ else
+ __cli();
status |= action->flags;
action->handler(irq, action->dev_id, regs);
action = action->next;
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)