Re: [PATCH RESEND] mtd: ubi: block: Fix error for write access
Am Freitag, 2. März 2018, 12:16:18 CET schrieb Romain Izard: > 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. > > Fixes: 9d54c8a33eec (UBI: R/O block driver on top of UBI volumes) > Signed-off-by: Romain Izard > --- > drivers/mtd/ubi/block.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/mtd/ubi/block.c b/drivers/mtd/ubi/block.c > index b210fdb31c98..4533423cf2aa 100644 > --- a/drivers/mtd/ubi/block.c > +++ b/drivers/mtd/ubi/block.c > @@ -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; Queued for -next. Thanks, //richard
[PATCH RESEND] 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. Fixes: 9d54c8a33eec (UBI: R/O block driver on top of UBI volumes) Signed-off-by: Romain Izard --- drivers/mtd/ubi/block.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/mtd/ubi/block.c b/drivers/mtd/ubi/block.c index b210fdb31c98..4533423cf2aa 100644 --- a/drivers/mtd/ubi/block.c +++ b/drivers/mtd/ubi/block.c @@ -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; } -- 2.14.1