summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHannes Reinecke <hare@suse.de>2015-08-27 14:17:02 +0200
committerJames Bottomley <JBottomley@Odin.com>2015-08-28 22:14:58 +0200
commit710105fda7a7f350c9fb22e7f61f74c3dc0fe514 (patch)
tree17009dff39cb2ee29652ec71aa7e610da08cb4cc
parentscsi_dh: don't allow to detach device handlers at runtime (diff)
downloadlinux-710105fda7a7f350c9fb22e7f61f74c3dc0fe514.tar.xz
linux-710105fda7a7f350c9fb22e7f61f74c3dc0fe514.zip
scsi_dh: return SCSI_DH_NOTCONN in scsi_dh_activate()
When calling scsi_dh_activate() we should be returning SCSI_DH_NOTCONN if the device handler couldn't be attached. Reviewed-by: Bart van Assche <bart.vanassche@sandisk.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Hannes Reinecke <hare@suse.de> Signed-off-by: James Bottomley <JBottomley@Odin.com>
-rw-r--r--drivers/scsi/scsi_dh.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/scsi/scsi_dh.c b/drivers/scsi/scsi_dh.c
index 9f6511da5023..edb044a7b56d 100644
--- a/drivers/scsi/scsi_dh.c
+++ b/drivers/scsi/scsi_dh.c
@@ -326,6 +326,7 @@ int scsi_dh_activate(struct request_queue *q, activate_complete fn, void *data)
if (!sdev->handler)
goto out_fn;
+ err = SCSI_DH_NOTCONN;
if (sdev->sdev_state == SDEV_CANCEL ||
sdev->sdev_state == SDEV_DEL)
goto out_fn;