Re: [GIT PULL] Ext3, reiserfs, udf & isofs fixes

From: Jan Kara
Date: Mon Sep 09 2013 - 10:13:01 EST


On Fri 06-09-13 09:11:18, Linus Torvalds wrote:
> On Thu, Sep 5, 2013 at 12:58 PM, Jan Kara <jack@xxxxxxx> wrote:
> >
> > udf/isofs changes to refuse mounting fs rw instead of mounting it
> > ro automatically which makes eject button work as expected for all media (see
> > the changelog for why userspace should be ok with this change).
>
> Pulled. However, these are kind of odd.
>
> For trying _remount_ something read-only, isofs returns the logical
> EROFS error code.
>
> But for trying to mount it in the first place, it returns EACCES,
> which sounds insane. It's not a permission problem - no amount of
> permissions will ever make it work.
>
> UDF always does EACCES, regardless of mount/remount.
>
> Is there some fundamental reason for the insane error code? Does user
> space do the wrong thing if we were to just always return "EROFS"
> which makes much more sense?
So I personally like EROFS more as well. However blkdev_get_by_path()
(which is what mount(2) uses) returns EACCES if the device is read-only and
FMODE_WRITE was requested. Also the manpage for mount(2) talks about
EACCES when RW mount of read-only device was requested and doesn't mention
EROFS at all.

Now mount(8) handles both EROFS and EACCES the same way but I wanted to
stay on the safer side in case someone uses mount(2) directly so I used
more common EACCES.

I can create a separate patch changing all EACCES return values in this
area to EROFS but I'm not sure it is worth the possible hassle with
userspace...

Honza
--
Jan Kara <jack@xxxxxxx>
SUSE Labs, CR
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/