diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2016-01-31 11:06:16 -0500 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2016-02-23 02:56:18 -0500 |
commit | 76737ce17ab4c88f14e4452076610474108246d7 (patch) | |
tree | 59d00defd69cc30c427c5eb637553bc74e5406c8 /arch/s390/kernel/irq.c | |
parent | 77ec8a545136272ca3056ca3759836df0cfee5e5 (diff) |
s390: add current_stack_pointer() helper function
Implement current_stack_pointer() helper function and use it
everywhere, instead of having several different inline assembly
variants.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Tested-by: Peter Oberparleiter <oberpar@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/irq.c')
-rw-r--r-- | arch/s390/kernel/irq.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/s390/kernel/irq.c b/arch/s390/kernel/irq.c index f41d5208aaf7..c373a1d41d10 100644 --- a/arch/s390/kernel/irq.c +++ b/arch/s390/kernel/irq.c | |||
@@ -164,8 +164,7 @@ void do_softirq_own_stack(void) | |||
164 | { | 164 | { |
165 | unsigned long old, new; | 165 | unsigned long old, new; |
166 | 166 | ||
167 | /* Get current stack pointer. */ | 167 | old = current_stack_pointer(); |
168 | asm volatile("la %0,0(15)" : "=a" (old)); | ||
169 | /* Check against async. stack address range. */ | 168 | /* Check against async. stack address range. */ |
170 | new = S390_lowcore.async_stack; | 169 | new = S390_lowcore.async_stack; |
171 | if (((new - old) >> (PAGE_SHIFT + THREAD_ORDER)) != 0) { | 170 | if (((new - old) >> (PAGE_SHIFT + THREAD_ORDER)) != 0) { |