52 lines
1.4 KiB
Diff
52 lines
1.4 KiB
Diff
From 6bd3baf07e6afee274dd9df6a445bb2a7ad2671b Mon Sep 17 00:00:00 2001
|
|
From: Thomas Gleixner <tglx@linutronix.de>
|
|
Date: Sun, 3 Apr 2011 11:57:29 +0200
|
|
Subject: [PATCH 099/290] genirq-force-threading.patch
|
|
|
|
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
|
|
---
|
|
include/linux/interrupt.h | 8 ++++++--
|
|
kernel/irq/manage.c | 2 ++
|
|
2 files changed, 8 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
|
|
index ddd6b2a..b9162dc 100644
|
|
--- a/include/linux/interrupt.h
|
|
+++ b/include/linux/interrupt.h
|
|
@@ -396,9 +396,13 @@ static inline int disable_irq_wake(unsigned int irq)
|
|
|
|
|
|
#ifdef CONFIG_IRQ_FORCED_THREADING
|
|
-extern bool force_irqthreads;
|
|
+# 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 7600092..b3e6228 100644
|
|
--- a/kernel/irq/manage.c
|
|
+++ b/kernel/irq/manage.c
|
|
@@ -18,6 +18,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)
|
|
@@ -26,6 +27,7 @@ static int __init setup_forced_irqthreads(char *arg)
|
|
return 0;
|
|
}
|
|
early_param("threadirqs", setup_forced_irqthreads);
|
|
+# endif
|
|
#endif
|
|
|
|
/**
|