diff options
author | Heiko Carstens <hca@linux.ibm.com> | 2021-07-05 22:26:26 +0200 |
---|---|---|
committer | Vasily Gorbik <gor@linux.ibm.com> | 2021-07-08 22:12:17 +0200 |
commit | 938e02beb3a0181ed1c7828e8939ffa32c350bea (patch) | |
tree | 147448fe76dd7f832ac7d63301d60c7cbc58e31f /arch/s390/kernel/irq.c | |
parent | s390/ap: get rid of register asm in ap_dqap() (diff) | |
download | linux-938e02beb3a0181ed1c7828e8939ffa32c350bea.tar.xz linux-938e02beb3a0181ed1c7828e8939ffa32c350bea.zip |
s390/irq: simplify do_softirq_own_stack()
do_softirq_own_stack() is always called from task context and
therefore it is not necessary to check if the async stack is
currently used.
Remove the check and directly switch to async stack.
Reviewed-by: Sven Schnelle <svens@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Diffstat (limited to '')
-rw-r--r-- | arch/s390/kernel/irq.c | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/arch/s390/kernel/irq.c b/arch/s390/kernel/irq.c index c0df4060d28d..a03d9f54d36f 100644 --- a/arch/s390/kernel/irq.c +++ b/arch/s390/kernel/irq.c @@ -270,17 +270,7 @@ unsigned int arch_dynirq_lower_bound(unsigned int from) */ void do_softirq_own_stack(void) { - unsigned long old, new; - - old = current_stack_pointer(); - /* Check against async. stack address range. */ - new = S390_lowcore.async_stack; - if (((new - old) >> (PAGE_SHIFT + THREAD_SIZE_ORDER)) != 0) { - CALL_ON_STACK(__do_softirq, new, 0); - } else { - /* We are already on the async stack. */ - __do_softirq(); - } + CALL_ON_STACK(__do_softirq, S390_lowcore.async_stack, 0); } /* |