aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_isr.c
diff options
context:
space:
mode:
authorMarcus Barrow <marcus.barrow@qlogic.com>2008-01-17 12:02:13 -0500
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2008-01-23 12:29:31 -0500
commit0b05a1f0d68bf4714c37aa7843c31df1866b017a (patch)
treee228b6fc9b9afabad5c22bd693159a2eb1e003e7 /drivers/scsi/qla2xxx/qla_isr.c
parenta4722cf24d7a0dfa0874d49f61b053a6459761bf (diff)
[SCSI] qla2xxx: Use completion routines.
Instead of abusing the semaphore interfaces for mailbox command completions. Additional cleanups and Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_isr.c')
-rw-r--r--drivers/scsi/qla2xxx/qla_isr.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c
index 22216fe76059..642a0c3f09c6 100644
--- a/drivers/scsi/qla2xxx/qla_isr.c
+++ b/drivers/scsi/qla2xxx/qla_isr.c
@@ -104,7 +104,7 @@ qla2100_intr_handler(int irq, void *dev_id)
104 if (test_bit(MBX_INTR_WAIT, &ha->mbx_cmd_flags) && 104 if (test_bit(MBX_INTR_WAIT, &ha->mbx_cmd_flags) &&
105 (status & MBX_INTERRUPT) && ha->flags.mbox_int) { 105 (status & MBX_INTERRUPT) && ha->flags.mbox_int) {
106 set_bit(MBX_INTERRUPT, &ha->mbx_cmd_flags); 106 set_bit(MBX_INTERRUPT, &ha->mbx_cmd_flags);
107 up(&ha->mbx_intr_sem); 107 complete(&ha->mbx_intr_comp);
108 } 108 }
109 109
110 return (IRQ_HANDLED); 110 return (IRQ_HANDLED);
@@ -216,7 +216,7 @@ qla2300_intr_handler(int irq, void *dev_id)
216 if (test_bit(MBX_INTR_WAIT, &ha->mbx_cmd_flags) && 216 if (test_bit(MBX_INTR_WAIT, &ha->mbx_cmd_flags) &&
217 (status & MBX_INTERRUPT) && ha->flags.mbox_int) { 217 (status & MBX_INTERRUPT) && ha->flags.mbox_int) {
218 set_bit(MBX_INTERRUPT, &ha->mbx_cmd_flags); 218 set_bit(MBX_INTERRUPT, &ha->mbx_cmd_flags);
219 up(&ha->mbx_intr_sem); 219 complete(&ha->mbx_intr_comp);
220 } 220 }
221 221
222 return (IRQ_HANDLED); 222 return (IRQ_HANDLED);
@@ -1597,7 +1597,7 @@ qla24xx_intr_handler(int irq, void *dev_id)
1597 if (test_bit(MBX_INTR_WAIT, &ha->mbx_cmd_flags) && 1597 if (test_bit(MBX_INTR_WAIT, &ha->mbx_cmd_flags) &&
1598 (status & MBX_INTERRUPT) && ha->flags.mbox_int) { 1598 (status & MBX_INTERRUPT) && ha->flags.mbox_int) {
1599 set_bit(MBX_INTERRUPT, &ha->mbx_cmd_flags); 1599 set_bit(MBX_INTERRUPT, &ha->mbx_cmd_flags);
1600 up(&ha->mbx_intr_sem); 1600 complete(&ha->mbx_intr_comp);
1601 } 1601 }
1602 1602
1603 return IRQ_HANDLED; 1603 return IRQ_HANDLED;
@@ -1734,7 +1734,7 @@ qla24xx_msix_default(int irq, void *dev_id)
1734 if (test_bit(MBX_INTR_WAIT, &ha->mbx_cmd_flags) && 1734 if (test_bit(MBX_INTR_WAIT, &ha->mbx_cmd_flags) &&
1735 (status & MBX_INTERRUPT) && ha->flags.mbox_int) { 1735 (status & MBX_INTERRUPT) && ha->flags.mbox_int) {
1736 set_bit(MBX_INTERRUPT, &ha->mbx_cmd_flags); 1736 set_bit(MBX_INTERRUPT, &ha->mbx_cmd_flags);
1737 up(&ha->mbx_intr_sem); 1737 complete(&ha->mbx_intr_comp);
1738 } 1738 }
1739 1739
1740 return IRQ_HANDLED; 1740 return IRQ_HANDLED;