qlge: Get rid of irqsave/restore in intr disable.

The completion interrupt disable routine is only called from the ISR, so
there is no need for irqsave/restore.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Ron Mercer 2009-03-09 10:59:23 +00:00 committed by David S. Miller
parent c9cf0a04a0
commit 08b1bc8f4a

View File

@ -587,7 +587,6 @@ u32 ql_enable_completion_interrupt(struct ql_adapter *qdev, u32 intr)
static u32 ql_disable_completion_interrupt(struct ql_adapter *qdev, u32 intr) static u32 ql_disable_completion_interrupt(struct ql_adapter *qdev, u32 intr)
{ {
u32 var = 0; u32 var = 0;
unsigned long hw_flags;
struct intr_context *ctx; struct intr_context *ctx;
/* HW disables for us if we're MSIX multi interrupts and /* HW disables for us if we're MSIX multi interrupts and
@ -597,14 +596,14 @@ static u32 ql_disable_completion_interrupt(struct ql_adapter *qdev, u32 intr)
return 0; return 0;
ctx = qdev->intr_context + intr; ctx = qdev->intr_context + intr;
spin_lock_irqsave(&qdev->hw_lock, hw_flags); spin_lock(&qdev->hw_lock);
if (!atomic_read(&ctx->irq_cnt)) { if (!atomic_read(&ctx->irq_cnt)) {
ql_write32(qdev, INTR_EN, ql_write32(qdev, INTR_EN,
ctx->intr_dis_mask); ctx->intr_dis_mask);
var = ql_read32(qdev, STS); var = ql_read32(qdev, STS);
} }
atomic_inc(&ctx->irq_cnt); atomic_inc(&ctx->irq_cnt);
spin_unlock_irqrestore(&qdev->hw_lock, hw_flags); spin_unlock(&qdev->hw_lock);
return var; return var;
} }