RFC: should an incremental reload of exports for mountd be optional?

Alan Somers asomers at freebsd.org
Tue Jun 4 00:44:14 UTC 2019


On Mon, Jun 3, 2019 at 6:30 PM Rick Macklem <rmacklem at uoguelph.ca> wrote:
>
> Alan Somers wrote:
> >Will a restart of the daemon cause clients to get HUPped if they try
> >to access an exported filesystem while mountd is restarting?
> >-Alan
> I'm not sure what you mean by HUPped, but during a restart of mountd, extant
> mounts should continue to work.

Perhaps it wasn't SIGHUP, but I recall that a few years ago there was
a problem where all NFS I/O would fail while mountd was reloading.  I
think it's the problem that you fixed in r241568.

>
> What will fail during the mountd restart is new NFSv3 mount attempts, because
> they won't be able to talk to mountd via the Mount protocol. Usually the
> failure will be rpcbind not having MOUNTPROG registered.
> Then a retry of the mount (which will happen after something like 30sec if you
> don't <ctrl>C the mount command) will succeed, assuming mountd has restarted.
> Unmounts will complain the MOUNTPROG wasn't registered, but the umount
> will work anyhow.
>
> Then "showmount", which is never guaranteed to return correct info, will report it
> as still mounted. Since "showmount" never knows about NFSv4 mounts and just
> returns its guess at what is mounted, I don't find it useful anyhow.
>
>  NFSv4 mounts should continue to work when mountd isn't running, since they don't use the Mount protocol. And, since they don't use the Mount protocol, "showmount"
> never knows about them.
>
> So, I restart can cause some disruption, but they are mostly just delays when doing
> new NFSv3 mounts on the server.
>
> rick
>
> On Mon, Jun 3, 2019 at 5:13 PM Rick Macklem <rmacklem at uoguelph.ca> wrote:
> >
> > Thanks everyone for your comments. I just committed the patch with
> > the incremental reload of exports always enabled.
> > If people run into problems, I can add some "backdoor" way to disable
> > it, as suggested by asomers at .
> >
> > A restart of the daemon will always do a full reload to work around any
> > reload failures.
> >
> > rick
> >
> [stuff snipped]


More information about the freebsd-fs mailing list