Re: RFC: changing the default NFSv4 minor version?

From: Rodney W. Grimes <freebsd-rwg_at_gndrsh.dnsmgr.net>
Date: Sat, 15 May 2021 05:11:41 -0700 (PDT)
> Rodney W. Grimes wrote:
> [stuff snipped]
> >Daniel Ebdrup Jensen wrote:
> >> Hi Rick,
> >>
> >>       If I understand your plans correctly, you're not going to be making
> >>       it so that minorversion=N complains?
> >
> >Ah, I think that if you specify a minorversion and the server
> >does not support that minorversion it SHOULD complain.
> Yes. The mount attempt currently fails with "minor version not supported"
> when the minor version is not supported by the server.
> My plan would not change this when "minorversion=N" is specified.
> 
> >  Only
> >if when a minorversion has NOT been specified should it silently
> >use the highest common version.
> Yes, that's my plan.
> 
> >>
> >>       In that case, I don't quite understand how it can be a POLA
> >>       violation, since presumably it'll fall back to NFSv4.0 if that's
> >>       the only thing that's supported by ntpd on some other system.
> >
> >Ignoring the ntpd typo, I think ricks concern on POLA is that currently
> >in FreeBSD if you do NOT specify any minor version you get v4.0 and
> >only v4.0 even if both sides support v4.2, so with his change things
> >are suddenly going to change, that may astonish some.
> Yes.
> 
> >>
> >>       At any rate, I'm all for it since I'm already using NFSv4.2. :)
> >
> >I support this change with the caveats that it only occurs if the
> >minorversion is unspecified and this same negotiation logic is
> >applied to both server and client.  (Ie, if I spec a minorversion
> >on the server it is no longer free to negotiate any other version,
> >IE if I spec 1 it should *NOT* drop to 0.  It may mean minorversion
> >becomes minorversions or highestminor?    So that I can make a
> >server that allows minor={0,1} or even {1,2}, ie I in that second
> >case I want it to NOT use a minor=0 mount.
> The server end is passive. It either supports the minor version specified
> in the RPC by the client and performs the RPC or it replies NFS4ERR_MINOR_VERSION_MISMATCH if it does not support it.
> The FreeBSD server already has sysctls:
> vfs.nfsd.server_min_minorversion4
> vfs.nfsd.server_max_minorversion4
> that allows a sysadmin to limit the minor versions supported.
> 
> I think this satisfies your server requirement?

Yes, it certainly does.

> rick
> > Yours,
> > Daniel Ebdrup Jensen
> Rod Grimes                                                 rgrimes_at_freebsd.org
-- 
Rod Grimes                                                 rgrimes_at_freebsd.org
Received on Sat May 15 2021 - 10:11:44 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:28 UTC