parisc: implement irq stacks
authorHelge Deller <deller@gmx.de>
Tue, 7 May 2013 20:25:42 +0000 (20:25 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 27 Jun 2013 17:38:26 +0000 (10:38 -0700)
commit85d1f3a085961333a59e30906baabf8f5993d266
tree4d95541129a9c90f646f6247a6ce3cb63f4b4143
parent57c9e56523dcb65821d9cbd9382b1cb453ce2ad9
parisc: implement irq stacks

commit 200c880420a2c02a0899120ce52d801fad705b90 upstream.

Default kernel stack size on parisc is 16k.  During tests we found that the
kernel stack can easily grow beyond 13k, which leaves 3k left for irq
processing.

This patch adds the possibility to activate an additional stack of 16k per CPU
which is being used during irq processing.  This implementation does not yet
uses this irq stack for the irq bh handler.

The assembler code for call_on_stack was heavily cleaned up by John
David Anglin.

Signed-off-by: Helge Deller <deller@gmx.de>
CC: John David Anglin <dave.anglin@bell.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/parisc/Kconfig
arch/parisc/include/asm/processor.h
arch/parisc/kernel/entry.S
arch/parisc/kernel/irq.c