irq: Consolidate do_softirq() arch overriden implementations
authorFrederic Weisbecker <fweisbec@gmail.com>
Thu, 5 Sep 2013 13:49:45 +0000 (15:49 +0200)
committerFrederic Weisbecker <fweisbec@gmail.com>
Tue, 1 Oct 2013 10:53:25 +0000 (12:53 +0200)
commit7d65f4a6553203da6a22097821d151fbbe7e4956
tree4ac4162ca37756530112c29e8dbf1d2568313d81
parentded797547548a5b8e7b92383a41e4c0e6b0ecb7f
irq: Consolidate do_softirq() arch overriden implementations

All arch overriden implementations of do_softirq() share the following
common code: disable irqs (to avoid races with the pending check),
check if there are softirqs pending, then execute __do_softirq() on
a specific stack.

Consolidate the common parts such that archs only worry about the
stack switch.

Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@au1.ibm.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Paul Mackerras <paulus@au1.ibm.com>
Cc: James Hogan <james.hogan@imgtec.com>
Cc: James E.J. Bottomley <jejb@parisc-linux.org>
Cc: Helge Deller <deller@gmx.de>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Andrew Morton <akpm@linux-foundation.org>
arch/metag/kernel/irq.c
arch/parisc/kernel/irq.c
arch/powerpc/kernel/irq.c
arch/s390/kernel/irq.c
arch/sh/kernel/irq.c
arch/sparc/kernel/irq_64.c
arch/x86/kernel/entry_64.S
arch/x86/kernel/irq_32.c
arch/x86/kernel/irq_64.c
include/linux/interrupt.h
kernel/softirq.c