Messages in this thread Patch in this message | | | Date | Fri, 26 Dec 2008 17:13:15 +0800 | From | Wang Chen <> | Subject | [PATCH 1/2 -tip] irq: remove unneeded desc->chip->ack check |
| |
desc->chip->ack is initialized to ack_bad(). It will not be NULL.
Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com> --- kernel/irq/chip.c | 3 +-- kernel/irq/handle.c | 14 +++++--------- 2 files changed, 6 insertions(+), 11 deletions(-)
diff --git a/kernel/irq/chip.c b/kernel/irq/chip.c index f63c706..b929803 100644 --- a/kernel/irq/chip.c +++ b/kernel/irq/chip.c @@ -530,8 +530,7 @@ handle_percpu_irq(unsigned int irq, struct irq_desc *desc) kstat_incr_irqs_this_cpu(irq, desc); - if (desc->chip->ack) - desc->chip->ack(irq); + desc->chip->ack(irq); action_ret = handle_IRQ_event(irq, desc->action); if (!noirqdebug) diff --git a/kernel/irq/handle.c b/kernel/irq/handle.c index 6492400..4408672 100644 --- a/kernel/irq/handle.c +++ b/kernel/irq/handle.c @@ -337,11 +337,9 @@ unsigned int __do_IRQ(unsigned int irq) /* * No locking required for CPU-local interrupts: */ - if (desc->chip->ack) { - desc->chip->ack(irq); - /* get new one */ - desc = irq_remap_to_desc(irq, desc); - } + desc->chip->ack(irq); + /* get new one */ + desc = irq_remap_to_desc(irq, desc); if (likely(!(desc->status & IRQ_DISABLED))) { action_ret = handle_IRQ_event(irq, desc->action); if (!noirqdebug) @@ -352,10 +350,8 @@ unsigned int __do_IRQ(unsigned int irq) } spin_lock(&desc->lock); - if (desc->chip->ack) { - desc->chip->ack(irq); - desc = irq_remap_to_desc(irq, desc); - } + desc->chip->ack(irq); + desc = irq_remap_to_desc(irq, desc); /* * REPLAY is when Linux resends an IRQ that was dropped earlier * WAITING is used by probe to mark irqs that are being tested -- 1.5.3.4
| |