diff options
author | Marcus Barrow <marcus.barrow@qlogic.com> | 2008-01-17 12:02:13 -0500 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2008-01-23 12:29:31 -0500 |
commit | 0b05a1f0d68bf4714c37aa7843c31df1866b017a (patch) | |
tree | e228b6fc9b9afabad5c22bd693159a2eb1e003e7 /drivers/scsi/qla2xxx/qla_isr.c | |
parent | a4722cf24d7a0dfa0874d49f61b053a6459761bf (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.c | 8 |
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; |