On Tue, Mar 15, 2016 at 11:26:07AM -0400, Yin, Fengwei wrote:
> From: Fengwei Yin <fengwei....@linaro.org>
> 
> a5f5774c55a2e3ed75f4d6c5556b7bfcb726e6f0 introduced the whole block
> device checking for MMC_IOC_CMD while the old code has no such check.
> 
> It breaks some ioctl call like BLKROSET from user space. An example
> is "adb remount" cmd. It prints out following error message:
> "remount of /system failed; couldn't make block device XXXX writable: \
> Operation not permitted."
> while the command worked fine.
> 
> This change move the whole block device checking only for MMC_IOC_MULTI_CMD.

I think mmc_blk_ioctl_cmd will need this as well, as will probably
do any new ioctl.

So I think the right fix is to simply return -EINVAL instead of
EPERM if on a partition, which will make all the block layer ioctls
works fine.

Reply via email to