summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2011-04-03 11:57:29 +0200
committerSteven Rostedt <rostedt@goodmis.org>2015-06-18 18:16:10 -0400
commitf667bb5e93d0c073ad0b3b8674550856e40f4745 (patch)
tree2f0372b24739b556e358020acd72191e25db5e69
parent597c5f30d594a30c88e21b436fc0a9bd6d2db9a5 (diff)
downloadlinux-rt-f667bb5e93d0c073ad0b3b8674550856e40f4745.tar.gz
genirq-force-threading.patch
Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
-rw-r--r--include/linux/interrupt.h6
-rw-r--r--kernel/irq/manage.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
index 265b87a48a73..eb28fe605162 100644
--- a/include/linux/interrupt.h
+++ b/include/linux/interrupt.h
@@ -358,9 +358,13 @@ static inline int disable_irq_wake(unsigned int irq)
#ifdef CONFIG_IRQ_FORCED_THREADING
+# ifndef CONFIG_PREEMPT_RT_BASE
extern bool force_irqthreads;
+# else
+# define force_irqthreads (true)
+# endif
#else
-#define force_irqthreads (0)
+#define force_irqthreads (false)
#endif
#ifndef __ARCH_SET_SOFTIRQ_PENDING
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
index 0a9104b4608b..8bff377ba8ef 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -22,6 +22,7 @@
#include "internals.h"
#ifdef CONFIG_IRQ_FORCED_THREADING
+# ifndef CONFIG_PREEMPT_RT_BASE
__read_mostly bool force_irqthreads;
static int __init setup_forced_irqthreads(char *arg)
@@ -30,6 +31,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)