mtd: ubi: block: Fix error for write access
PATCH RESEND 1/1 mtd: ubi: block: Fix error for write access
When opening a device with write access, ubiblock_open returns an error code. Currently, this error code is -EPERM, but this is not the right value.
The open function for other block devices returns -EROFS when opening read-only devices with FMODE_WRITE set. When used with dm-verity, the veritysetup userspace tool is expecting EROFS, and refuses to use the ubiblock device.
Use -EROFS for ubiblock as well. As a result, veritysetup accepts the ubiblock device as valid.
--- drivers/mtd/ubi/block.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/mtd/ubi/block.c +1 -1
@@ -242,7 +242,7 @@ static int ubiblock_open(struct block_device *bdev, fmode_t mode)* in any case. */ if (mode &FMODE_WRITE ) { - ret = -EPERM ; + ret = -EROFS ; goto out_unlock; }
Signature · 1 line
2.14.1
Am Freitag, 2. M�rz 2018, 12:16:18 CET schrieb Romain Izard:
Quoted 24 lines
When opening a device with write access,
ubiblock_openreturns an error code. Currently, this error code is-EPERM, but this is not the right value.The open function for other block devices returns
-EROFSwhen opening read-only devices withFMODE_WRITEset. When used with dm-verity, the veritysetup userspace tool is expecting EROFS, and refuses to use the ubiblock device.Use
-EROFSfor ubiblock as well. As a result, veritysetup accepts the ubiblock device as valid.Fixes 9d54c8a33eec (UBI: R/O block driver on top of UBI volumes)Signed-off-by Romain Izard <[email protected]>--- drivers/mtd/ubi/block.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)drivers/mtd/ubi/block.c +0
-0@@ -242,7 +242,7 @@ static int ubiblock_open(struct block_device *bdev,
fmode_tmode) * in any case.
drivers/mtd/ubi/block.c static int ubiblock_open(struct block_device *bdev, fmode_t mode) · line 245
Quoted 4 lines
drivers/mtd/ubi/block.c +1
-1*/ if (mode &FMODE_WRITE ) { - ret = -EPERM ; + ret = -EROFS ;
Queued for -next.
Thanks,
//richard