scsi_dh: don't allow to detach device handlers at runtime
The I/O submission and completion paths call into the device handler without any synchronization agains detachment. So disallow detaching device handlers at runtime. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com> Reviewed-by: Hannes Reinecke <hare@suse.de> Signed-off-by: James Bottomley <JBottomley@Odin.com>
This commit is contained in:
parent
e959ed9a44
commit
d442277495
1 changed files with 4 additions and 2 deletions
|
@ -181,8 +181,10 @@ store_dh_state(struct device *dev, struct device_attribute *attr,
|
||||||
/*
|
/*
|
||||||
* Detach from a device handler
|
* Detach from a device handler
|
||||||
*/
|
*/
|
||||||
scsi_dh_handler_detach(sdev);
|
sdev_printk(KERN_WARNING, sdev,
|
||||||
err = 0;
|
"can't detach handler %s.\n",
|
||||||
|
sdev->handler->name);
|
||||||
|
err = -EINVAL;
|
||||||
} else if (!strncmp(buf, "activate", 8)) {
|
} else if (!strncmp(buf, "activate", 8)) {
|
||||||
/*
|
/*
|
||||||
* Activate a device handler
|
* Activate a device handler
|
||||||
|
|
Loading…
Reference in a new issue