From 7314ca55964cbd7f637a56be907f5951632ea4c0 Mon Sep 17 00:00:00 2001 From: Steven Rostedt Date: Tue, 18 Dec 2007 18:05:58 +0100 Subject: [PATCH] --- yaml --- r: 75067 b: refs/heads/master c: 971e5b35fb02c5088d49e6c024aab73582a35b71 h: refs/heads/master i: 75065: 57291a790b70fafdb8d4ef85dc2e1def43e395e8 75063: c1805f521e71eb92c7bf2cfb64848381a298d89d v: v3 --- [refs] | 2 +- trunk/kernel/irq/chip.c | 9 ++------- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/[refs] b/[refs] index 5b1e5a1040c8..33dd04188446 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 213fde71024223abcdd7d9e5349d1ea2679227b5 +refs/heads/master: 971e5b35fb02c5088d49e6c024aab73582a35b71 diff --git a/trunk/kernel/irq/chip.c b/trunk/kernel/irq/chip.c index 9b5dff6b3f6a..44019ce30a14 100644 --- a/trunk/kernel/irq/chip.c +++ b/trunk/kernel/irq/chip.c @@ -297,18 +297,13 @@ handle_simple_irq(unsigned int irq, struct irq_desc *desc) if (unlikely(desc->status & IRQ_INPROGRESS)) goto out_unlock; + desc->status &= ~(IRQ_REPLAY | IRQ_WAITING); kstat_cpu(cpu).irqs[irq]++; action = desc->action; - if (unlikely(!action || (desc->status & IRQ_DISABLED))) { - if (desc->chip->mask) - desc->chip->mask(irq); - desc->status &= ~(IRQ_REPLAY | IRQ_WAITING); - desc->status |= IRQ_PENDING; + if (unlikely(!action || (desc->status & IRQ_DISABLED))) goto out_unlock; - } - desc->status &= ~(IRQ_REPLAY | IRQ_WAITING | IRQ_PENDING); desc->status |= IRQ_INPROGRESS; spin_unlock(&desc->lock);