scsi: sd: change manage_start_stop to bool in sysfs interface
/sys/class/scsi_disk/0:2:0:0/manage_start_stop can be changed to 0 unexpectly by writing an invalid string. Signed-off-by: weiping zhang <zhangweiping@didichuxing.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
658e9a6dc1
commit
623401ee33
|
@ -231,11 +231,15 @@ manage_start_stop_store(struct device *dev, struct device_attribute *attr,
|
|||
{
|
||||
struct scsi_disk *sdkp = to_scsi_disk(dev);
|
||||
struct scsi_device *sdp = sdkp->device;
|
||||
bool v;
|
||||
|
||||
if (!capable(CAP_SYS_ADMIN))
|
||||
return -EACCES;
|
||||
|
||||
sdp->manage_start_stop = simple_strtoul(buf, NULL, 10);
|
||||
if (kstrtobool(buf, &v))
|
||||
return -EINVAL;
|
||||
|
||||
sdp->manage_start_stop = v;
|
||||
|
||||
return count;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue