patch-2.1.34 linux/include/linux/interrupt.h

Next file: linux/include/linux/ioport.h
Previous file: linux/include/linux/cdrom.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.33/linux/include/linux/interrupt.h linux/include/linux/interrupt.h
@@ -3,10 +3,8 @@
 #define _LINUX_INTERRUPT_H
 
 #include <linux/kernel.h>
-
 #include <asm/bitops.h>
 #include <asm/atomic.h>
-#include <asm/hardirq.h>
 
 struct irqaction {
 	void (*handler)(int, void *, struct pt_regs *);
@@ -17,7 +15,6 @@
 	struct irqaction *next;
 };
 
-extern atomic_t intr_count;
 extern volatile unsigned char bh_running;
 
 extern int bh_mask_count[32];
@@ -45,58 +42,8 @@
 	CM206_BH
 };
 
-extern inline void init_bh(int nr, void (*routine)(void))
-{
-	bh_base[nr] = routine;
-	bh_mask_count[nr] = 0;
-	bh_mask |= 1 << nr;
-}
-
-extern inline void mark_bh(int nr)
-{
-	set_bit(nr, &bh_active);
-}
-
-/*
- * These use a mask count to correctly handle
- * nested disable/enable calls
- */
-extern inline void disable_bh(int nr)
-{
-	bh_mask &= ~(1 << nr);
-	bh_mask_count[nr]++;
-}
-
-extern inline void enable_bh(int nr)
-{
-	if (!--bh_mask_count[nr])
-		bh_mask |= 1 << nr;
-}
-
-/*
- * start_bh_atomic/end_bh_atomic also nest
- * naturally by using a counter
- */
-extern inline void start_bh_atomic(void)
-{
-#ifdef __SMP__
-	atomic_inc(&intr_count);
-	synchronize_irq();
-#else
-	intr_count++;
-	barrier();
-#endif
-}
-
-extern inline void end_bh_atomic(void)
-{
-#ifdef __SMP__
-	atomic_dec(&intr_count);
-#else
-	barrier();
-	intr_count--;
-#endif
-}
+#include <asm/hardirq.h>
+#include <asm/softirq.h>
 
 /*
  * Autoprobing for irqs:

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov