summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/scsi.c
diff options
context:
space:
mode:
authorMike Anderson <andmike@us.ibm.com>2005-06-16 11:13:42 -0700
committerJames Bottomley <jejb@mulgrave.(none)>2005-07-30 11:11:37 -0500
commitd2c9d9eafa03dbd08a8a439e6c5addb8b1f03b9b (patch)
tree2af0c85e0ffddf593821c961f0a5e729de8c6ccc /drivers/scsi/scsi.c
parentd3301874083874f8a0ac88aa1bb7da6b62df34d2 (diff)
downloadlinux-d2c9d9eafa03dbd08a8a439e6c5addb8b1f03b9b.tar.bz2
[SCSI] host state model update: reimplement scsi_host_cancel
Remove the old scsi_host_cancel function as it has not been working for sometime do to the device list possibly being empty when it is called and possible race issues. Add setting of SHOST_CANCEL at the state of beginning of scsi_remove_host. Signed-off-by: Mike Anderson <andmike@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/scsi.c')
-rw-r--r--drivers/scsi/scsi.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/scsi/scsi.c b/drivers/scsi/scsi.c
index fb85b3ced7b5..d1aa95d45a70 100644
--- a/drivers/scsi/scsi.c
+++ b/drivers/scsi/scsi.c
@@ -627,7 +627,7 @@ int scsi_dispatch_cmd(struct scsi_cmnd *cmd)
spin_lock_irqsave(host->host_lock, flags);
scsi_cmd_get_serial(host, cmd);
- if (unlikely(host->shost_state == SHOST_CANCEL)) {
+ if (unlikely(host->shost_state == SHOST_DEL)) {
cmd->result = (DID_NO_CONNECT << 16);
scsi_done(cmd);
} else {