提交 459960d8 编写于 作者: T 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: NThomas Gleixner <tglx@linutronix.de>
上级 a2178334
......@@ -450,18 +450,9 @@ static void
iosapic_ack_edge_irq (struct irq_data *data)
{
unsigned int irq = data->irq;
struct irq_desc *idesc = irq_desc + irq;
irq_complete_move(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
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册