diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2011-02-23 23:52:18 +0000 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2011-02-25 20:24:22 +0100 |
commit | 0c4602ff88d6d6ef0ee6d228ee9acaa6448ff6f5 (patch) | |
tree | 0845c74ff325bee5dfc2db5c0ade08eb7dbb9ee7 /include | |
parent | 9d591edd02a245305b1b9379e4c5571bad4d2774 (diff) |
genirq: Add IRQF_NO_THREAD
Some low level interrupts cannot be threaded even when we force thread
all interrupt handlers. Add a flag to annotate such interrupts. Add
all timer interrupts to this category by default.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
LKML-Reference: <20110223234956.578893460@linutronix.de>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/interrupt.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h index e116fef274c..0fc3eb9397b 100644 --- a/include/linux/interrupt.h +++ b/include/linux/interrupt.h @@ -58,6 +58,7 @@ * irq line disabled until the threaded handler has been run. * IRQF_NO_SUSPEND - Do not disable this IRQ during suspend * IRQF_FORCE_RESUME - Force enable it on resume even if IRQF_NO_SUSPEND is set + * IRQF_NO_THREAD - Interrupt cannot be threaded */ #define IRQF_DISABLED 0x00000020 #define IRQF_SAMPLE_RANDOM 0x00000040 @@ -70,8 +71,9 @@ #define IRQF_ONESHOT 0x00002000 #define IRQF_NO_SUSPEND 0x00004000 #define IRQF_FORCE_RESUME 0x00008000 +#define IRQF_NO_THREAD 0x00010000 -#define IRQF_TIMER (__IRQF_TIMER | IRQF_NO_SUSPEND) +#define IRQF_TIMER (__IRQF_TIMER | IRQF_NO_SUSPEND | IRQF_NO_THREAD) /* * These values can be returned by request_any_context_irq() and |