Linux-2.4.0-test2
[davej-history.git] / include / asm-s390 / softirq.h
blobb0ad1dc56bf7ecc088378cb9a56416d3feaccb13
1 /*
2 * include/asm-s390/softirq.h
4 * S390 version
6 * Derived from "include/asm-i386/softirq.h"
7 */
9 #ifndef __ASM_SOFTIRQ_H
10 #define __ASM_SOFTIRQ_H
12 #ifndef __LINUX_SMP_H
13 #include <linux/smp.h>
14 #endif
16 #include <asm/atomic.h>
17 #include <asm/hardirq.h>
18 #include <asm/lowcore.h>
20 #define cpu_bh_disable(cpu) do { atomic_inc(&S390_lowcore.local_bh_count); barrier(); } while (0)
21 #define cpu_bh_enable(cpu) do { barrier(); atomic_dec(&S390_lowcore.local_bh_count); } while (0)
23 #define local_bh_disable() cpu_bh_disable(smp_processor_id())
24 #define local_bh_enable() cpu_bh_enable(smp_processor_id())
26 #define in_softirq() (atomic_read(&S390_lowcore.local_bh_count) != 0)
28 #endif /* __ASM_SOFTIRQ_H */