diff options
Diffstat (limited to 'include/linux/hardirq.h')
| -rw-r--r-- | include/linux/hardirq.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/hardirq.h b/include/linux/hardirq.h index d5b387669dab..e37a77cbd588 100644 --- a/include/linux/hardirq.h +++ b/include/linux/hardirq.h | |||
| @@ -64,6 +64,8 @@ | |||
| 64 | #define HARDIRQ_OFFSET (1UL << HARDIRQ_SHIFT) | 64 | #define HARDIRQ_OFFSET (1UL << HARDIRQ_SHIFT) |
| 65 | #define NMI_OFFSET (1UL << NMI_SHIFT) | 65 | #define NMI_OFFSET (1UL << NMI_SHIFT) |
| 66 | 66 | ||
| 67 | #define SOFTIRQ_DISABLE_OFFSET (2 * SOFTIRQ_OFFSET) | ||
| 68 | |||
| 67 | #ifndef PREEMPT_ACTIVE | 69 | #ifndef PREEMPT_ACTIVE |
| 68 | #define PREEMPT_ACTIVE_BITS 1 | 70 | #define PREEMPT_ACTIVE_BITS 1 |
| 69 | #define PREEMPT_ACTIVE_SHIFT (NMI_SHIFT + NMI_BITS) | 71 | #define PREEMPT_ACTIVE_SHIFT (NMI_SHIFT + NMI_BITS) |
| @@ -82,10 +84,13 @@ | |||
| 82 | /* | 84 | /* |
| 83 | * Are we doing bottom half or hardware interrupt processing? | 85 | * Are we doing bottom half or hardware interrupt processing? |
| 84 | * Are we in a softirq context? Interrupt context? | 86 | * Are we in a softirq context? Interrupt context? |
| 87 | * in_softirq - Are we currently processing softirq or have bh disabled? | ||
| 88 | * in_serving_softirq - Are we currently processing softirq? | ||
| 85 | */ | 89 | */ |
| 86 | #define in_irq() (hardirq_count()) | 90 | #define in_irq() (hardirq_count()) |
| 87 | #define in_softirq() (softirq_count()) | 91 | #define in_softirq() (softirq_count()) |
| 88 | #define in_interrupt() (irq_count()) | 92 | #define in_interrupt() (irq_count()) |
| 93 | #define in_serving_softirq() (softirq_count() & SOFTIRQ_OFFSET) | ||
| 89 | 94 | ||
| 90 | /* | 95 | /* |
| 91 | * Are we in NMI context? | 96 | * Are we in NMI context? |
