[patch V2 13/13] x86/softirq/64: Inline do_softirq_own_stack()

From: Thomas Gleixner
Date: Tue Feb 09 2021 - 21:13:41 EST


From: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

There is no reason to have this as a seperate function for a single caller.

Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx>
---
V2: Adopt to the new header file.
---
arch/x86/include/asm/irq_stack.h | 3 +--
arch/x86/include/asm/softirq_stack.h | 11 +++++++++++
arch/x86/kernel/irq_64.c | 5 -----
3 files changed, 12 insertions(+), 7 deletions(-)

--- a/arch/x86/include/asm/irq_stack.h
+++ b/arch/x86/include/asm/irq_stack.h
@@ -194,7 +194,7 @@
* interrupts are pending to be processed. The interrupt stack cannot be in
* use here.
*/
-#define run_softirq_on_irqstack() \
+#define do_softirq_own_stack() \
{ \
__this_cpu_write(hardirq_stack_inuse, true); \
call_on_irqstack(__do_softirq, ASM_CALL_SOFTIRQ); \
@@ -202,7 +202,6 @@
}

#else /* CONFIG_X86_64 */
-
/* System vector handlers always run on the stack they interrupted. */
#define run_sysvec_on_irqstack_cond(func, regs) \
{ \
--- /dev/null
+++ b/arch/x86/include/asm/softirq_stack.h
@@ -0,0 +1,11 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef _ASM_X86_SOFTIRQ_STACK_H
+#define _ASM_X86_SOFTIRQ_STACK_H
+
+#ifdef CONFIG_X86_64
+# include <asm/irq_stack.h>
+#else
+# include <asm-generic/softirq_stack.h>
+#endif
+
+#endif
--- a/arch/x86/kernel/irq_64.c
+++ b/arch/x86/kernel/irq_64.c
@@ -74,8 +74,3 @@ int irq_init_percpu_irqstack(unsigned in
return 0;
return map_irq_stack(cpu);
}
-
-void do_softirq_own_stack(void)
-{
- run_softirq_on_irqstack();
-}