diff options
Diffstat (limited to 'drivers/scsi/qla4xxx/ql4_os.c')
-rw-r--r-- | drivers/scsi/qla4xxx/ql4_os.c | 10 |
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); |