64035ac463
Prepare for better device categorization by moving everything to testing subdir first. [skip-ci]: chicken-egg problem: passing pmaports CI depends on pmbootstrap MR depends on this MR Related: postmarketos#16
57 lines
1.9 KiB
Diff
57 lines
1.9 KiB
Diff
From 951f53d9a9000dd661b9db7167929ec50d245856 Mon Sep 17 00:00:00 2001
|
|
From: "elel@3wh.net" <elel@3wh.net>
|
|
Date: Mon, 24 Dec 2018 21:52:48 +0000
|
|
Subject: [PATCH 3/5] Remove hard-coded denial of ro attr change for SD
|
|
|
|
---
|
|
drivers/scsi/sd.c | 9 ++-------
|
|
drivers/scsi/ufs/ufs-exynos.h | 1 +
|
|
2 files changed, 3 insertions(+), 7 deletions(-)
|
|
|
|
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c
|
|
index c01742258ac4..dae2cdb1b797 100755
|
|
--- a/drivers/scsi/sd.c
|
|
+++ b/drivers/scsi/sd.c
|
|
@@ -1280,11 +1280,6 @@ static int sd_ioctl(struct block_device *bdev, fmode_t mode,
|
|
SCSI_LOG_IOCTL(1, sd_printk(KERN_INFO, sdkp, "sd_ioctl: disk=%s, "
|
|
"cmd=0x%x\n", disk->disk_name, cmd));
|
|
|
|
- /* Forbid setting device's ro attribute */
|
|
- if (cmd == BLKROSET) {
|
|
- return -EACCES;
|
|
- }
|
|
-
|
|
error = scsi_verify_blk_ioctl(bdev, cmd);
|
|
if (error < 0)
|
|
return error;
|
|
@@ -2261,7 +2256,7 @@ sd_read_write_protect_flag(struct scsi_disk *sdkp, unsigned char *buffer)
|
|
struct scsi_mode_data data;
|
|
int old_wp = sdkp->write_prot;
|
|
|
|
- //set_disk_ro(sdkp->disk, 0);
|
|
+ set_disk_ro(sdkp->disk, 0);
|
|
if (sdp->skip_ms_page_3f) {
|
|
sd_printk(KERN_NOTICE, sdkp, "Assuming Write Enabled\n");
|
|
return;
|
|
@@ -2299,7 +2294,7 @@ sd_read_write_protect_flag(struct scsi_disk *sdkp, unsigned char *buffer)
|
|
"Test WP failed, assume Write Enabled\n");
|
|
} else {
|
|
sdkp->write_prot = ((data.device_specific & 0x80) != 0);
|
|
- //set_disk_ro(sdkp->disk, sdkp->write_prot);
|
|
+ set_disk_ro(sdkp->disk, sdkp->write_prot);
|
|
if (sdkp->first_scan || old_wp != sdkp->write_prot) {
|
|
sd_printk(KERN_NOTICE, sdkp, "Write Protect is %s\n",
|
|
sdkp->write_prot ? "on" : "off");
|
|
diff --git a/drivers/scsi/ufs/ufs-exynos.h b/drivers/scsi/ufs/ufs-exynos.h
|
|
index 43edc4b92eb5..70fbf39408be 100644
|
|
--- a/drivers/scsi/ufs/ufs-exynos.h
|
|
+++ b/drivers/scsi/ufs/ufs-exynos.h
|
|
@@ -511,4 +511,5 @@ struct ufs_attr_log {
|
|
u32 res;
|
|
u32 val;
|
|
};
|
|
+
|
|
#endif /* _UFS_EXYNOS_H_ */
|
|
--
|
|
2.20.1
|
|
|