Bug 255204

Summary: mountd: sometimes ignores SIGHUP with NFS 4 shares
Product: Base System Reporter: Alan Somers <asomers>
Component: binAssignee: freebsd-bugs (Nobody) <bugs>
Status: New ---    
Severity: Affects Only Me    
Priority: ---    
Version: 12.2-RELEASE   
Hardware: Any   
OS: Any   

Description Alan Somers freebsd_committer freebsd_triage 2021-04-19 02:31:50 UTC
When it receives SIGHUP mountd is supposed to reload the exports list.  But in my experience, it sometimes does not.  Sending additional SIGHUPs does not help, so I don't think it's due to a race.  Restarting mountd is the only cure.  Additional observations:

* Observed on 12.2-RELEASE, so it's not related to bug 246597
* Observed with NFS 4.0 Linux clients.  I think I've seen it with 4.1, too.  I've never seen it with NFS 3.
* The usual presentation is that I mount a client from a disallowed IP address, and the client gets EIO trying to access the share.  Then I edit the source dataset's sharenfs property (which sends SIGHUP to mountd), but the client still gets EIO.  I have to restart mountd to fix it.

The next time this happens, I'll try to debug it in place.