asm/softirq.h is dead
Subsystems (3)
PATCH 1/1 asm/softirq.h is dead
Still a three arches keep an unused copy around and quite a few places refer to it in comments still. Two of the two arches also include it in their _ksyms.c file, but given that softirq.h only contains macros (which are in hardirq.c aswell) that's just a leftover aswell.
Documentation/DocBook/kernel-hacking.tmpl +2 -2
@@ -241,7 +241,7 @@ <para> You can tell you are in a softirq (or bottom half, or tasklet) using the <function>in_softirq()</function> macro - (<filename class=headerfile>include/asm/softirq.h</filename>). + (<filename class=headerfile>include/asm/hardirq.h</filename>). </para> <caution> <para>
@@ -690,7 +690,7 @@ <sect1 id="routines-softirqs"> <title><function>local_bh_disable()</function>/<function>local_bh_enable()</function> - <filename class=headerfile>include/asm/softirq.h</filename></title> + <filename class=headerfile>include/linux/interrupt.h</filename></title> <para> These routines disable soft interrupts on the local CPU, and
Documentation/DocBook/kernel-locking.tmpl +1 -1
@@ -306,7 +306,7 @@ This works perfectly for <firstterm linkend="gloss-up"><acronym>UP </acronym></firstterm> as well: the spin lock vanishes, and this macro simply becomes <function>local_bh_disable()</function> - (<filename class=headerfile>include/asm/softirq.h</filename>), which + (<filename class=headerfile>include/linux/interrupt.h</filename>), which protects you from the bottom half being run. </para> </sect1>
arch/arm/kernel/entry-common.S +1 -1
@@ -23,7 +23,7 @@ #endif /* - * Our do_softirq out of line code. See include/asm-arm/softirq.h for + * Our do_softirq out of line code. See include/asm-arm/hardirq.h for * the calling assembly. */ ENTRY(__do_softirq)
arch/arm26/kernel/entry.S +1 -1
@@ -161,7 +161,7 @@ #endif /* - * Our do_softirq out of line code. See include/asm-arm/softirq.h for + * Our do_softirq out of line code. See include/asm-arm26/hardirq.h for * the calling assembly. */ ENTRY(__do_softirq)
arch/h8300/kernel/h8300_ksyms.c +0 -1
@@ -16,7 +16,6 @@#include <asm/semaphore.h> #include <asm/checksum.h> #include <asm/hardirq.h> -#include <asm/softirq.h> #include <asm/current.h> //asmlinkage long long __ashrdi3 (long long, int);
arch/mips/kernel/mips_ksyms.c +0 -1
@@ -25,7 +25,6 @@#include <asm/page.h> #include <asm/pgalloc.h> #include <asm/semaphore.h> -#include <asm/softirq.h> #include <asm/uaccess.h> #ifdef CONFIG_BLK_DEV_FD #include <asm/floppy.h>
include/asm-arm26/hardirq.h +0 -1
@@ -5,7 +5,6 @@#include <linux/cache.h> #include <linux/threads.h> -/* softirq.h is sensitive to the offsets of these fields */ typedef struct { unsigned int __softirq_pending; unsigned int __local_irq_count;
include/asm-arm26/softirq.h +0 -20
@@ -1,20 +0,0 @@ -#ifndef __ASM_SOFTIRQ_H -#define __ASM_SOFTIRQ_H - -#include <linux/preempt.h> -#include <asm/hardirq.h> - -#define local_bh_disable () \ - do { preempt_count() += SOFTIRQ_OFFSET; barrier(); } while (0) -#define __local_bh_enable () \ - do { barrier(); preempt_count() -= SOFTIRQ_OFFSET; } while (0) - -#define local_bh_enable () \ -do { \ - __local_bh_enable(); \ - if (unlikely(!in_interrupt() && softirq_pending(smp_processor_id()))) \ - __asm__("bl%? __do_softirq": : : "lr");/* out of line */ \ -preempt_check_resched (); \ -} while (0) - -#endif /* __ASM_SOFTIRQ_H */
include/asm-mips/softirq.h +0 -20
@@ -1,20 +0,0 @@ -#ifndef __ASM_SOFTIRQ_H -#define __ASM_SOFTIRQ_H - -#include <linux/preempt.h> -#include <asm/hardirq.h> - -#define local_bh_disable () \ - do { preempt_count() += SOFTIRQ_OFFSET; barrier(); } while (0) -#define __local_bh_enable () \ - do { barrier(); preempt_count() -= SOFTIRQ_OFFSET; } while (0) - -#define local_bh_enable () \ -do { \ - __local_bh_enable(); \ - if (unlikely(!in_interrupt() && softirq_pending(smp_processor_id()))) \ - do_softirq(); \ - preempt_check_resched(); \ -} while (0) - -#endif /* __ASM_SOFTIRQ_H */