Started nfsuserd with -usertimeout 0, and according to the man page, If the timeout is specified as 0, cache entries never time out. 9Feb17 0:29.12 nfsuserd: slave (nfsuserd) but then noticed much more cpu use than when the timeout was around 10 minutes. Looking at the source to nfsuserd, I don't think 0 has the special meaning indicated in the doc.
Typical time after two weeks running with -usertimeout 1523 Mon21 0:00.18 nfsuserd: slave (nfsuserd)
I haven't looked yet, but since I think specifying "-usertimeout <BIG-NUMBER>" will achieve "never times out", I'm tempted to just take the sentence out of the man page.
A commit references this bug: Author: rmacklem Date: Fri Apr 21 20:53:52 UTC 2017 New revision: 317270 URL: https://svnweb.freebsd.org/changeset/base/317270 Log: Get rid of bogus statement in the nfsuserd.8 man page. The nfsuserd.8 man page stated that a usertimeout of 0 would disable the cache timeout. This was simply not true, so this patch deletes the sentence. This is a content change. PR: 217406 MFC after: 2 weeks Changes: head/usr.sbin/nfsuserd/nfsuserd.8
Sentence deleted from man page and MFC'd.