aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/qla2xxx/qla_init.c20
-rw-r--r--drivers/scsi/qla2xxx/qla_os.c2
2 files changed, 13 insertions, 9 deletions
diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c
index 9f71226e0a3..f2da5c5dacd 100644
--- a/drivers/scsi/qla2xxx/qla_init.c
+++ b/drivers/scsi/qla2xxx/qla_init.c
@@ -3835,17 +3835,19 @@ qla2x00_abort_isp_cleanup(scsi_qla_host_t *vha)
3835 LOOP_DOWN_TIME); 3835 LOOP_DOWN_TIME);
3836 } 3836 }
3837 3837
3838 /* Make sure for ISP 82XX IO DMA is complete */ 3838 if (!ha->flags.eeh_busy) {
3839 if (IS_QLA82XX(ha)) { 3839 /* Make sure for ISP 82XX IO DMA is complete */
3840 if (qla2x00_eh_wait_for_pending_commands(vha, 0, 0, 3840 if (IS_QLA82XX(ha)) {
3841 WAIT_HOST) == QLA_SUCCESS) { 3841 if (qla2x00_eh_wait_for_pending_commands(vha, 0, 0,
3842 DEBUG2(qla_printk(KERN_INFO, ha, 3842 WAIT_HOST) == QLA_SUCCESS) {
3843 "Done wait for pending commands\n")); 3843 DEBUG2(qla_printk(KERN_INFO, ha,
3844 "Done wait for pending commands\n"));
3845 }
3844 } 3846 }
3845 }
3846 3847
3847 /* Requeue all commands in outstanding command list. */ 3848 /* Requeue all commands in outstanding command list. */
3848 qla2x00_abort_all_cmds(vha, DID_RESET << 16); 3849 qla2x00_abort_all_cmds(vha, DID_RESET << 16);
3850 }
3849} 3851}
3850 3852
3851/* 3853/*
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index cfa55827a10..e1782f77140 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -3773,6 +3773,8 @@ qla2xxx_pci_error_detected(struct pci_dev *pdev, pci_channel_state_t state)
3773 } 3773 }
3774 qla2x00_free_irqs(vha); 3774 qla2x00_free_irqs(vha);
3775 pci_disable_device(pdev); 3775 pci_disable_device(pdev);
3776 /* Return back all IOs */
3777 qla2x00_abort_all_cmds(vha, DID_RESET << 16);
3776 return PCI_ERS_RESULT_NEED_RESET; 3778 return PCI_ERS_RESULT_NEED_RESET;
3777 case pci_channel_io_perm_failure: 3779 case pci_channel_io_perm_failure:
3778 ha->flags.pci_channel_io_perm_failure = 1; 3780 ha->flags.pci_channel_io_perm_failure = 1;