aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_init.c
diff options
context:
space:
mode:
authorAndrew Vasquez <andrew.vasquez@qlogic.com>2008-01-31 15:33:46 -0500
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2008-02-07 19:02:38 -0500
commitdf4bf0bb5b077545031e8ad5ef3cc0dd8a5fbe05 (patch)
treeda275b2c498c7e85fbfb634aa7a95032e8583828 /drivers/scsi/qla2xxx/qla_init.c
parent61623fc34f9db7f01b672d2fa443d3d492049bbe (diff)
[SCSI] qla2xxx: Cleanup any outstanding SRB resources during shutdown.
Refactor SRB-failure completion codes in the process. Also, signal the DPC routine to complete sooner as backend processing at shutdown-time is superflous. [jejb: resolve conflicts with pci_enable_device_bars removal] Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_init.c')
-rw-r--r--drivers/scsi/qla2xxx/qla_init.c16
1 files changed, 1 insertions, 15 deletions
diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c
index d0633ca894be..2e51fa8a70f8 100644
--- a/drivers/scsi/qla2xxx/qla_init.c
+++ b/drivers/scsi/qla2xxx/qla_init.c
@@ -3213,9 +3213,6 @@ int
3213qla2x00_abort_isp(scsi_qla_host_t *ha) 3213qla2x00_abort_isp(scsi_qla_host_t *ha)
3214{ 3214{
3215 int rval; 3215 int rval;
3216 unsigned long flags = 0;
3217 uint16_t cnt;
3218 srb_t *sp;
3219 uint8_t status = 0; 3216 uint8_t status = 0;
3220 3217
3221 if (ha->flags.online) { 3218 if (ha->flags.online) {
@@ -3236,19 +3233,8 @@ qla2x00_abort_isp(scsi_qla_host_t *ha)
3236 LOOP_DOWN_TIME); 3233 LOOP_DOWN_TIME);
3237 } 3234 }
3238 3235
3239 spin_lock_irqsave(&ha->hardware_lock, flags);
3240 /* Requeue all commands in outstanding command list. */ 3236 /* Requeue all commands in outstanding command list. */
3241 for (cnt = 1; cnt < MAX_OUTSTANDING_COMMANDS; cnt++) { 3237 qla2x00_abort_all_cmds(ha, DID_RESET << 16);
3242 sp = ha->outstanding_cmds[cnt];
3243 if (sp) {
3244 ha->outstanding_cmds[cnt] = NULL;
3245 sp->flags = 0;
3246 sp->cmd->result = DID_RESET << 16;
3247 sp->cmd->host_scribble = (unsigned char *)NULL;
3248 qla2x00_sp_compl(ha, sp);
3249 }
3250 }
3251 spin_unlock_irqrestore(&ha->hardware_lock, flags);
3252 3238
3253 ha->isp_ops->get_flash_version(ha, ha->request_ring); 3239 ha->isp_ops->get_flash_version(ha, ha->request_ring);
3254 3240