Commit 459960d8 authored by Thomas Gleixner's avatar Thomas Gleixner

ia64: iosapic: Remove redundant mask from ack()

The core code calls mask_ack() which calls irq_ack() and irq_mask()
for the case where an interrupt is disabled and marked pending. That
seems to be a leftover from the old __do_IRQ() mode.
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
parent a2178334
...@@ -450,18 +450,9 @@ static void ...@@ -450,18 +450,9 @@ static void
iosapic_ack_edge_irq (struct irq_data *data) iosapic_ack_edge_irq (struct irq_data *data)
{ {
unsigned int irq = data->irq; unsigned int irq = data->irq;
struct irq_desc *idesc = irq_desc + irq;
irq_complete_move(irq); irq_complete_move(irq);
move_native_irq(irq); move_native_irq(irq);
/*
* Once we have recorded IRQ_PENDING already, we can mask the
* interrupt for real. This prevents IRQ storms from unhandled
* devices.
*/
if ((idesc->status & (IRQ_PENDING|IRQ_DISABLED)) ==
(IRQ_PENDING|IRQ_DISABLED))
mask_irq(data);
} }
#define iosapic_enable_edge_irq unmask_irq #define iosapic_enable_edge_irq unmask_irq
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment