aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi
diff options
context:
space:
mode:
authorAndrew Vasquez <andrew.vasquez@qlogic.com>2011-10-26 17:20:13 -0400
committerJames Bottomley <JBottomley@Parallels.com>2011-10-30 06:08:15 -0400
commitd424754cbe97fe581985dca4400347cb275d7eb2 (patch)
treed08c1b1a958c073344babf09a446ef483cedfea2 /drivers/scsi
parenta63ec37629415848b5704eda5110fe8e750032ca (diff)
[SCSI] qla2xxx: Correct inadvertent clearing of RISC_INTR status.
During heavy I/O (CPU-affinity mode enabled) and CLI/Agent interactions, the driver would report periodic mailbox command timeout statuses. Within the CPU-affinity ISR handler, the driver should check the 'disable-msix-handshake' flag in deciding whether or not to clear HCCRX_CLR_RISC_INT. The mode is not specific to a dedicated queue, instead, applies to the current 'ha' context. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/qla2xxx/qla_isr.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c
index 3474e86e98ab..2516adf1aeea 100644
--- a/drivers/scsi/qla2xxx/qla_isr.c
+++ b/drivers/scsi/qla2xxx/qla_isr.c
@@ -2279,7 +2279,7 @@ qla25xx_msix_rsp_q(int irq, void *dev_id)
2279 ha = rsp->hw; 2279 ha = rsp->hw;
2280 2280
2281 /* Clear the interrupt, if enabled, for this response queue */ 2281 /* Clear the interrupt, if enabled, for this response queue */
2282 if (rsp->options & ~BIT_6) { 2282 if (!ha->flags.disable_msix_handshake) {
2283 reg = &ha->iobase->isp24; 2283 reg = &ha->iobase->isp24;
2284 spin_lock_irqsave(&ha->hardware_lock, flags); 2284 spin_lock_irqsave(&ha->hardware_lock, flags);
2285 WRT_REG_DWORD(&reg->hccr, HCCRX_CLR_RISC_INT); 2285 WRT_REG_DWORD(&reg->hccr, HCCRX_CLR_RISC_INT);