| Kernel v2.4.13 /include/asm-s390x/softirq.h |
|---|
 2.4.13
 include
 asm-s390x
 softirq.h
diff -u --recursive --new-file v2.4.12/linux/include/asm-s390x/softirq.h linux/include/asm-s390x/softirq.h
--- v2.4.12/linux/include/asm-s390x/softirq.h Sun Sep 23 11:41:01 2001
+++ linux/include/asm-s390x/softirq.h Thu Oct 11 09:43:38 2001
@@ -18,22 +18,25 @@
#include <asm/lowcore.h>
#define __cpu_bh_enable(cpu) \
- do { barrier(); local_bh_count(cpu)--; } while (0)
+ do { barrier(); local_bh_count(cpu)--; } while (0)
#define cpu_bh_disable(cpu) \
- do { local_bh_count(cpu)++; barrier(); } while (0)
+ do { local_bh_count(cpu)++; barrier(); } while (0)
#define local_bh_disable() cpu_bh_disable(smp_processor_id())
#define __local_bh_enable() __cpu_bh_enable(smp_processor_id())
#define in_softirq() (local_bh_count(smp_processor_id()) != 0)
+extern void do_call_softirq(void);
+
#define local_bh_enable() \
do { \
- unsigned int *ptr = &local_bh_count(smp_processor_id()); \
- barrier(); \
- if (!--*ptr) \
+ unsigned int *ptr = &local_bh_count(smp_processor_id()); \
+ barrier(); \
+ if (!--*ptr) \
if (softirq_pending(smp_processor_id())) \
- do_softirq(); \
+ /* Use the async. stack for softirq */ \
+ do_call_softirq(); \
} while (0)
#endif /* __ASM_SOFTIRQ_H */
|