Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 Feb 2021 22:54:19 +0000
From:      Rick Macklem <rmacklem@uoguelph.ca>
To:        Alan Somers <asomers@freebsd.org>
Cc:        freebsd-fs <freebsd-fs@freebsd.org>
Subject:   Re: NFS delegations don't expire after unmounting client
Message-ID:  <YQXPR0101MB09687C56A3237F48FE6115C0DD8C9@YQXPR0101MB0968.CANPRD01.PROD.OUTLOOK.COM>
In-Reply-To: <CAOtMX2jXC-h8kuKn2tqYyY1VnDmZd9Yy%2BjHQNwgmVBC8nHtYQQ@mail.gmail.com>
References:  <CAOtMX2h_2zCNpyzOs=SzuohRvLgga=Eip-LJ-7QjJBvwmueLXg@mail.gmail.com> <YQXPR0101MB09684A4372F120C3B3FE5BE5DD8C9@YQXPR0101MB0968.CANPRD01.PROD.OUTLOOK.COM>, <CAOtMX2jXC-h8kuKn2tqYyY1VnDmZd9Yy%2BjHQNwgmVBC8nHtYQQ@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Alan Somers wrote:=0A=
>On Thu, Feb 11, 2021 at 2:54 PM Rick Macklem wrote:=0A=
>>Alan Somers wrote:=0A=
>>>I have several Linux 5.9.15 clients mounting NFS 4.1 served from a FreeB=
SD=0A=
>>>12.2-RELEASE server.  Today, most of those clients' mounts hung, and the=
ir=0A=
>>>dmesg displayed "nfs: server XXX not responding, still trying".=0A=
>>Usually these messages indicate a networking layer problem.=0A=
>>Next time (or if it still happening), check basic network connectivity.=
=0A=
>>Also, if any net interface does not handle TSO correctly for an RPC=0A=
>>message near 64Kbytes in size (the nasty one is where the NFS RPC is=0A=
>>less than 64K by less than 14bytes, so when the MAC layer header is=0A=
>>prepended, the total exceed 64K), you can get "stuck" TCP connections.=0A=
>>Most FreeBSD net chip drivers should be fixed for this, but I wouldn't be=
=0A=
>>surprised if there are some broken ones out there.=0A=
>>--> Disabling TSO fixes the problem in this case.=0A=
>=0A=
>In fact it is still happening.  Basic network connectivity works.  But tcp=
dump shows almost no network activity.  Just >a few keepalive packets of le=
ngth 0-1.  Based on the fact that unmount and even lsof hang on the client,=
 I'm >suspecting a Linux bug somewhere.=0A=
Yea, without a packet capture being done when the failure first occurs, it =
is pretty hard=0A=
to diagnose.=0A=
There is some way to turn on debugging output in Linux NFS, but I've forgot=
ten how to do it.=0A=
=0A=
As an aside, delegations are rarely useful and make the protocol more compl=
ex,=0A=
including the need for callbacks to work correctly (in NFSv4.1, they normal=
ly=0A=
use the same TCP connection as the regular RPCs).=0A=
- You might just want to disable them on the server. (You must have set the=
 sysctl non-zero,=0A=
   since they are disabled by default).=0A=
=0A=
Have fun with it, rick=0A=
=0A=
-Alan=0A=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?YQXPR0101MB09687C56A3237F48FE6115C0DD8C9>