NFS delegations don't expire after unmounting client

Alan Somers asomers at freebsd.org
Thu Feb 11 19:18:15 UTC 2021


I have several Linux 5.9.15 clients mounting NFS 4.1 served from a FreeBSD
12.2-RELEASE server.  Today, most of those clients' mounts hung, and their
dmesg displayed "nfs: server XXX not responding, still trying".  But one
client kept running fine.  nfsdumpstate on the server showed that that
client, and that one only, had 2 delegations.  It also had 1 OpenOwner, 1
Open, and the CB flags set.  It was the only client that had CB set.  On
the theory that its delegation callbacks weren't working, I tried
unmounting all of its NFS shares.  That worked, but to my surprise
nfsdumpstate showed no change!  I could see that the lease time recorded in
/var/run/nfs-stablerestart was 120s, and I must've waited about 30m in all
before disabling delegations, unmounting everything, and returning to NFS
v3.  So my questions are, what can cause a delegation to linger around long
after it should've expired, and what else can I do to debug this problem if
it recurs?

-Alan


More information about the freebsd-fs mailing list