diff options
Diffstat (limited to 'kernel/irq')
-rw-r--r-- | kernel/irq/handle.c | 2 | ||||
-rw-r--r-- | kernel/irq/manage.c | 5 |
2 files changed, 2 insertions, 5 deletions
diff --git a/kernel/irq/handle.c b/kernel/irq/handle.c index e68bb5aebe02..5dd2572993cf 100644 --- a/kernel/irq/handle.c +++ b/kernel/irq/handle.c | |||
@@ -360,8 +360,6 @@ irqreturn_t handle_IRQ_event(unsigned int irq, struct irqaction *action) | |||
360 | irqreturn_t ret, retval = IRQ_NONE; | 360 | irqreturn_t ret, retval = IRQ_NONE; |
361 | unsigned int status = 0; | 361 | unsigned int status = 0; |
362 | 362 | ||
363 | WARN_ONCE(!in_irq(), "BUG: IRQ handler called from non-hardirq context!"); | ||
364 | |||
365 | if (!(action->flags & IRQF_DISABLED)) | 363 | if (!(action->flags & IRQF_DISABLED)) |
366 | local_irq_enable_in_hardirq(); | 364 | local_irq_enable_in_hardirq(); |
367 | 365 | ||
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c index 7e2e7dd4cd2f..2734eca59243 100644 --- a/kernel/irq/manage.c +++ b/kernel/irq/manage.c | |||
@@ -109,10 +109,9 @@ int irq_set_affinity(unsigned int irq, const struct cpumask *cpumask) | |||
109 | spin_lock_irqsave(&desc->lock, flags); | 109 | spin_lock_irqsave(&desc->lock, flags); |
110 | 110 | ||
111 | #ifdef CONFIG_GENERIC_PENDING_IRQ | 111 | #ifdef CONFIG_GENERIC_PENDING_IRQ |
112 | if (desc->status & IRQ_MOVE_PCNTXT || desc->status & IRQ_DISABLED) { | 112 | if (desc->status & IRQ_MOVE_PCNTXT) |
113 | cpumask_copy(desc->affinity, cpumask); | ||
114 | desc->chip->set_affinity(irq, cpumask); | 113 | desc->chip->set_affinity(irq, cpumask); |
115 | } else { | 114 | else { |
116 | desc->status |= IRQ_MOVE_PENDING; | 115 | desc->status |= IRQ_MOVE_PENDING; |
117 | cpumask_copy(desc->pending_mask, cpumask); | 116 | cpumask_copy(desc->pending_mask, cpumask); |
118 | } | 117 | } |