summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qlogicfas408.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/qlogicfas408.c')
-rw-r--r--drivers/scsi/qlogicfas408.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/scsi/qlogicfas408.c b/drivers/scsi/qlogicfas408.c
index 575f8a8fcf34..cb75e0b7baea 100644
--- a/drivers/scsi/qlogicfas408.c
+++ b/drivers/scsi/qlogicfas408.c
@@ -511,8 +511,14 @@ int qlogicfas408_abort(Scsi_Cmnd * cmd)
int qlogicfas408_bus_reset(Scsi_Cmnd * cmd)
{
struct qlogicfas408_priv *priv = get_priv_by_cmd(cmd);
+ unsigned long flags;
+
priv->qabort = 2;
+
+ spin_lock_irqsave(cmd->device->host->host_lock, flags);
ql_zap(priv);
+ spin_unlock_irqrestore(cmd->device->host->host_lock, flags);
+
return SUCCESS;
}