From: Andrew Vasquez Date: Fri, 19 Oct 2007 22:59:14 +0000 (-0700) Subject: [SCSI] qla2xxx: Defer explicit interrupt-polling processing to init-time scenarios. X-Git-Tag: v2.6.24-rc1~19^2~6 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a3a63d55a4eec418d845a91222ac53443f62717b;p=linux-2.6 [SCSI] qla2xxx: Defer explicit interrupt-polling processing to init-time scenarios. As the intermixing may cause issues where HCCR bits could be cleared inappropriately during MSI/MSI-X interrupt handling. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley --- diff --git a/drivers/scsi/qla2xxx/qla_iocb.c b/drivers/scsi/qla2xxx/qla_iocb.c index 7f6a89bd94..024c662ec3 100644 --- a/drivers/scsi/qla2xxx/qla_iocb.c +++ b/drivers/scsi/qla2xxx/qla_iocb.c @@ -525,7 +525,7 @@ qla2x00_req_pkt(scsi_qla_host_t *ha) /* Check for pending interrupts. */ /* During init we issue marker directly */ - if (!ha->marker_needed) + if (!ha->marker_needed && !ha->flags.init_done) qla2x00_poll(ha); spin_lock_irq(&ha->hardware_lock); diff --git a/drivers/scsi/qla2xxx/qla_mbx.c b/drivers/scsi/qla2xxx/qla_mbx.c index c53ec67c47..ccd662a6f5 100644 --- a/drivers/scsi/qla2xxx/qla_mbx.c +++ b/drivers/scsi/qla2xxx/qla_mbx.c @@ -252,7 +252,7 @@ qla2x00_mailbox_command(scsi_qla_host_t *pvha, mbx_cmd_t *mcp) /* Clean up */ ha->mcp = NULL; - if (!abort_active) { + if (abort_active || !io_lock_on) { DEBUG11(printk("%s(%ld): checking for additional resp " "interrupt.\n", __func__, ha->host_no));