summaryrefslogtreecommitdiffstats
path: root/genirq-Enable-the-config-switch-for-forced-threading.patch
blob: c4fc39c7b28c61e0747178bf622fa56ab18f623f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
From 76fa1e838bdf4b7c3a2a7afc4c7b99c82b68861f Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo@elte.hu>
Date: Fri, 3 Jul 2009 08:29:35 -0500
Subject: [PATCH] genirq: Enable the config switch for forced threading

commit 7d836495d944ab225c939c7d3f3c0eca6a37f409 in tip.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
 kernel/Kconfig.preempt |   19 +++++++++++++++++++
 1 files changed, 19 insertions(+), 0 deletions(-)

diff --git a/kernel/Kconfig.preempt b/kernel/Kconfig.preempt
index 2ff1834..7c20f45 100644
--- a/kernel/Kconfig.preempt
+++ b/kernel/Kconfig.preempt
@@ -67,3 +67,22 @@ config PREEMPT_SOFTIRQS
 	  sofirq-preempt=0/1 boot-time option.
 
 	  Say N if you are unsure.
+
+config PREEMPT_HARDIRQS
+	bool "Thread Hardirqs"
+	default n
+	depends on GENERIC_HARDIRQS_NO__DO_IRQ
+	select PREEMPT_SOFTIRQS
+	help
+	  This option reduces the latency of the kernel by 'threading'
+	  hardirqs. This means that all (or selected) hardirqs will run
+	  in their own kernel thread context. While this helps latency,
+	  this feature can also reduce performance.
+
+	  The threading of hardirqs can also be controlled via the
+	  /proc/sys/kernel/hardirq_preemption runtime flag and the
+	  hardirq-preempt=0/1 boot-time option. Per-irq threading can
+	  be enabled/disable via the /proc/irq/<IRQ>/<handler>/threaded
+	  runtime flags.
+
+	  Say N if you are unsure.
-- 
1.7.0.4