Re: [PATCH] nfsd: default to kernel default for minorversion 1

J. Bruce Fields
2010-02-12T21:54:52Z

On Fri, Feb 12, 2010 at 04:44:03PM -0500, Steve Dickson wrote:
>
>
> On 02/12/2010 03:05 PM, J. Bruce Fields wrote:
> > On Fri, Feb 12, 2010 at 02:58:23PM -0500, Steve Dickson wrote:
> >>
> >>
> >> On 02/05/2010 03:05 PM, J. Bruce Fields wrote:
> >>> From: J. Bruce Fields <bfields@citi.umich.edu>
> >>>
> >>> The current kernel code should not be enabled by default, because it
> >>> does not yet attempt to be a conform completely to the rfc; for example,
> >>> some required pieces of protocol are missing.
> >>>
> >>> Therefore the kernel defaults to leaving minorversion1 off. When the
> >>> code matures sufficiently, that default will change.
> >>>
> >>> That kernel default becomes meaningless if nfs-utils always explicitly
> >>> turns 4.1 on or off. So, nfs-utils should by default do nothing.
> >>>
> >>> Early adopters that want to turn on NFSv4.1 explicitly can still do so
> >>> using
> >>>
> >>> echo "+4.1" >/proc/fs/nfsd/versions
> >>>
> >> When I write to /proc/fs/nfsd/versions I'm getting
> >> write error: Device or resource busy
> >>
> >> What did you do to make the file writeable?
> >
> > You just need to do it before starting nfsd.
> Well before nfsd starts but after the nfsd module is loaded
> (assuming nfsd is a module)

Right.

> > So if it's just a one-off experiment you could
> >
> > /etc/init.d/nfs-server stop
> > echo "+4.1" >/proc/fs/nsfd/versions
> > /etc/init.d/nfs-server start
> >
> > On machines where I was using 4.1 regularly I'd probably at a line to
> > the init script, or to a local init script that ran before it.
> Yea.. I'm looking into do something of this nature...
>
> The odd thing about this patch is 4.1 can only be turned off. There
> is no way to enabled except from doing the above echo... which
> seems to beg the question, why have the 4.1 code in nfsd at all?

So people can test it.

We should not recommend it for production use at this point, at least
not by people who are not fully aware of what they're doing.

If you'd rather we added an option to rpc.nfsd to do the equivalent of
the echo, that's fine. But I think for testers/early adopters, adding a
"echo" to their init script isn't a big deal.

Of course, once it's mature we can flip the kernel default to on, and
nobody will have to do anything.

--b.