diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2011-02-08 06:17:57 -0500 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2011-02-19 06:58:17 -0500 |
commit | 2a0d6fb335d4428285dab2d254911748e6040807 (patch) | |
tree | 16090086899df6886436b89cc76e6d0d5b36d083 /kernel/irq/spurious.c | |
parent | c1594b77e46124bb462f961e536120e471c67446 (diff) |
genirq: Move IRQ_PENDING flag to core
Keep status in sync until all users are fixed.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel/irq/spurious.c')
-rw-r--r-- | kernel/irq/spurious.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/kernel/irq/spurious.c b/kernel/irq/spurious.c index 367614f858ff..692ce2bae302 100644 --- a/kernel/irq/spurious.c +++ b/kernel/irq/spurious.c | |||
@@ -93,7 +93,8 @@ static int try_one_irq(int irq, struct irq_desc *desc, bool force) | |||
93 | * Already running: If it is shared get the other | 93 | * Already running: If it is shared get the other |
94 | * CPU to go looking for our mystery interrupt too | 94 | * CPU to go looking for our mystery interrupt too |
95 | */ | 95 | */ |
96 | desc->status |= IRQ_PENDING; | 96 | irq_compat_set_pending(desc); |
97 | desc->istate |= IRQS_PENDING; | ||
97 | goto out; | 98 | goto out; |
98 | } | 99 | } |
99 | 100 | ||
@@ -103,7 +104,7 @@ static int try_one_irq(int irq, struct irq_desc *desc, bool force) | |||
103 | if (handle_irq_event(desc) == IRQ_HANDLED) | 104 | if (handle_irq_event(desc) == IRQ_HANDLED) |
104 | ret = IRQ_HANDLED; | 105 | ret = IRQ_HANDLED; |
105 | action = desc->action; | 106 | action = desc->action; |
106 | } while ((desc->status & IRQ_PENDING) && action); | 107 | } while ((desc->istate & IRQS_PENDING) && action); |
107 | desc->istate &= ~IRQS_POLL_INPROGRESS; | 108 | desc->istate &= ~IRQS_POLL_INPROGRESS; |
108 | out: | 109 | out: |
109 | raw_spin_unlock(&desc->lock); | 110 | raw_spin_unlock(&desc->lock); |