diff options
Diffstat (limited to 'debian/patches-rt/0071-genirq-Force-interrupt-thread-on-RT.patch')
-rw-r--r-- | debian/patches-rt/0071-genirq-Force-interrupt-thread-on-RT.patch | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/debian/patches-rt/0071-genirq-Force-interrupt-thread-on-RT.patch b/debian/patches-rt/0071-genirq-Force-interrupt-thread-on-RT.patch new file mode 100644 index 000000000..9eb44beb4 --- /dev/null +++ b/debian/patches-rt/0071-genirq-Force-interrupt-thread-on-RT.patch @@ -0,0 +1,54 @@ +From d4c832ada3bdbd395d69e11232761697f6ed9523 Mon Sep 17 00:00:00 2001 +From: Thomas Gleixner <tglx@linutronix.de> +Date: Sun, 3 Apr 2011 11:57:29 +0200 +Subject: [PATCH 071/347] genirq: Force interrupt thread on RT +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.246-rt110.tar.xz + +Force threaded_irqs and optimize the code (force_irqthreads) in regard +to this. + +Signed-off-by: Thomas Gleixner <tglx@linutronix.de> +--- + include/linux/interrupt.h | 4 ++++ + kernel/irq/manage.c | 2 ++ + 2 files changed, 6 insertions(+) + +diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h +index eeceac3376fc..315f852b4981 100644 +--- a/include/linux/interrupt.h ++++ b/include/linux/interrupt.h +@@ -427,7 +427,11 @@ extern int irq_set_irqchip_state(unsigned int irq, enum irqchip_irq_state which, + bool state); + + #ifdef CONFIG_IRQ_FORCED_THREADING ++# ifdef CONFIG_PREEMPT_RT_BASE ++# define force_irqthreads (true) ++# else + extern bool force_irqthreads; ++# endif + #else + #define force_irqthreads (0) + #endif +diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c +index 18f3cdbf41fd..f12f50f5b605 100644 +--- a/kernel/irq/manage.c ++++ b/kernel/irq/manage.c +@@ -24,6 +24,7 @@ + #include "internals.h" + + #ifdef CONFIG_IRQ_FORCED_THREADING ++# ifndef CONFIG_PREEMPT_RT_BASE + __read_mostly bool force_irqthreads; + EXPORT_SYMBOL_GPL(force_irqthreads); + +@@ -33,6 +34,7 @@ static int __init setup_forced_irqthreads(char *arg) + return 0; + } + early_param("threadirqs", setup_forced_irqthreads); ++# endif + #endif + + static void __synchronize_hardirq(struct irq_desc *desc, bool sync_chip) +-- +2.36.1 + |