summaryrefslogtreecommitdiff
path: root/patches/x86-softirq-Disable-softirq-stacks-on-PREEMPT_RT.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/x86-softirq-Disable-softirq-stacks-on-PREEMPT_RT.patch')
-rw-r--r--patches/x86-softirq-Disable-softirq-stacks-on-PREEMPT_RT.patch57
1 files changed, 0 insertions, 57 deletions
diff --git a/patches/x86-softirq-Disable-softirq-stacks-on-PREEMPT_RT.patch b/patches/x86-softirq-Disable-softirq-stacks-on-PREEMPT_RT.patch
deleted file mode 100644
index ec820816ec96..000000000000
--- a/patches/x86-softirq-Disable-softirq-stacks-on-PREEMPT_RT.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From: Thomas Gleixner <tglx@linutronix.de>
-Subject: x86/softirq: Disable softirq stacks on PREEMPT_RT
-Date: Fri, 24 Sep 2021 18:12:45 +0200
-
-PREEMPT_RT preempts softirqs and the current implementation avoids
-do_softirq_own_stack() and only uses __do_softirq().
-
-Disable the unused softirqs stacks on PREEMPT_RT to safe some memory and
-ensure that do_softirq_own_stack() is not used which is not expected.
-
-[bigeasy: commit description.]
-
-Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
-Link: https://lore.kernel.org/r/20210924161245.2357247-1-bigeasy@linutronix.de
----
- arch/x86/include/asm/irq_stack.h | 3 +++
- arch/x86/kernel/irq_32.c | 2 ++
- 2 files changed, 5 insertions(+)
-
---- a/arch/x86/include/asm/irq_stack.h
-+++ b/arch/x86/include/asm/irq_stack.h
-@@ -185,6 +185,7 @@
- IRQ_CONSTRAINTS, regs, vector); \
- }
-
-+#ifndef CONFIG_PREEMPT_RT
- #define ASM_CALL_SOFTIRQ \
- "call %P[__func] \n"
-
-@@ -201,6 +202,8 @@
- __this_cpu_write(hardirq_stack_inuse, false); \
- }
-
-+#endif
-+
- #else /* CONFIG_X86_64 */
- /* System vector handlers always run on the stack they interrupted. */
- #define run_sysvec_on_irqstack_cond(func, regs) \
---- a/arch/x86/kernel/irq_32.c
-+++ b/arch/x86/kernel/irq_32.c
-@@ -132,6 +132,7 @@ int irq_init_percpu_irqstack(unsigned in
- return 0;
- }
-
-+#ifndef CONFIG_PREEMPT_RT
- void do_softirq_own_stack(void)
- {
- struct irq_stack *irqstk;
-@@ -148,6 +149,7 @@ void do_softirq_own_stack(void)
-
- call_on_stack(__do_softirq, isp);
- }
-+#endif
-
- void __handle_irq(struct irq_desc *desc, struct pt_regs *regs)
- {