aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla4xxx/ql4_os.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/qla4xxx/ql4_os.c')
-rw-r--r--drivers/scsi/qla4xxx/ql4_os.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/scsi/qla4xxx/ql4_os.c b/drivers/scsi/qla4xxx/ql4_os.c
index 4cec123a6a6a..bfd1e68654ab 100644
--- a/drivers/scsi/qla4xxx/ql4_os.c
+++ b/drivers/scsi/qla4xxx/ql4_os.c
@@ -2978,6 +2978,7 @@ static int qla4xxx_recover_adapter(struct scsi_qla_host *ha)
2978 if (status == QLA_SUCCESS) { 2978 if (status == QLA_SUCCESS) {
2979 if (!test_bit(AF_FW_RECOVERY, &ha->flags)) 2979 if (!test_bit(AF_FW_RECOVERY, &ha->flags))
2980 qla4xxx_cmd_wait(ha); 2980 qla4xxx_cmd_wait(ha);
2981
2981 ha->isp_ops->disable_intrs(ha); 2982 ha->isp_ops->disable_intrs(ha);
2982 qla4xxx_process_aen(ha, FLUSH_DDB_CHANGED_AENS); 2983 qla4xxx_process_aen(ha, FLUSH_DDB_CHANGED_AENS);
2983 qla4xxx_abort_active_cmds(ha, DID_RESET << 16); 2984 qla4xxx_abort_active_cmds(ha, DID_RESET << 16);
@@ -3508,10 +3509,8 @@ static void qla4xxx_free_adapter(struct scsi_qla_host *ha)
3508{ 3509{
3509 qla4xxx_abort_active_cmds(ha, DID_NO_CONNECT << 16); 3510 qla4xxx_abort_active_cmds(ha, DID_NO_CONNECT << 16);
3510 3511
3511 if (test_bit(AF_INTERRUPTS_ON, &ha->flags)) { 3512 /* Turn-off interrupts on the card. */
3512 /* Turn-off interrupts on the card. */ 3513 ha->isp_ops->disable_intrs(ha);
3513 ha->isp_ops->disable_intrs(ha);
3514 }
3515 3514
3516 if (is_qla40XX(ha)) { 3515 if (is_qla40XX(ha)) {
3517 writel(set_rmask(CSR_SCSI_PROCESSOR_INTR), 3516 writel(set_rmask(CSR_SCSI_PROCESSOR_INTR),
@@ -3547,8 +3546,7 @@ static void qla4xxx_free_adapter(struct scsi_qla_host *ha)
3547 } 3546 }
3548 3547
3549 /* Detach interrupts */ 3548 /* Detach interrupts */
3550 if (test_and_clear_bit(AF_IRQ_ATTACHED, &ha->flags)) 3549 qla4xxx_free_irqs(ha);
3551 qla4xxx_free_irqs(ha);
3552 3550
3553 /* free extra memory */ 3551 /* free extra memory */
3554 qla4xxx_mem_free(ha); 3552 qla4xxx_mem_free(ha);