[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAJfpeguwy+dyPmad8RE5JmUce8ecze8Kccj--YgXaEHThxeT4g@mail.gmail.com>
Date: Tue, 17 Dec 2019 19:08:34 +0100
From: Miklos Szeredi <miklos@...redi.hu>
To: David Howells <dhowells@...hat.com>
Cc: Al Viro <viro@...iv.linux.org.uk>,
Laura Abbott <labbott@...hat.com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Ilya Dryomov <idryomov@...il.com>,
Jeremi Piotrowski <jeremi.piotrowski@...il.com>,
Linux FS Devel <linux-fsdevel@...r.kernel.org>,
Phillip Lougher <phillip@...ashfs.org.uk>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] vfs: Don't reject unknown parameters
On Tue, Dec 17, 2019 at 6:49 PM David Howells <dhowells@...hat.com> wrote:
>
> Miklos Szeredi <miklos@...redi.hu> wrote:
>
> > > So you could bloody well just leave recognition (and handling) of "source"
> > > to the caller, leaving you with just this:
> > >
> > > if (strcmp(param->key, "source") == 0)
> > > return -ENOPARAM;
> > > /* Just log an error for backwards compatibility */
> > > errorf(fc, "%s: Unknown parameter '%s'", fc->fs_type->name, param->key);
> > > return 0;
> >
> > Which is fine for the old mount(2) interface.
> >
> > But we have a brand new API as well; do we really need to carry these
> > backward compatibility issues forward? I mean checking if a
> > param/flag is supported or not *is* useful and lacking that check is
> > the source of numerous headaches in legacy interfaces (just take the
> > open(2) example and the introduction of O_TMPFILE).
>
> The problem with what you're suggesting is that you can't then make
> /sbin/mount to use the new syscalls because that would change userspace
> behaviour - unless you either teach /sbin/mount which filesystems discard
> which errors from unrecognised options or pass a flag to the kernel to shift
> into or out of 'strict' mode.
The latter has minor cost, so we can add it easily. Long term I think
it makes sense to move this mess up to userspace, and hence let
util-linux deal with it.
Thanks,
Miklos
Powered by blists - more mailing lists