]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
nfscl: Modify Close RPC so that it does not use "owner" for NFSv4.1/4.2
authorRick Macklem <rmacklem@FreeBSD.org>
Mon, 18 Oct 2021 00:50:56 +0000 (17:50 -0700)
committerRick Macklem <rmacklem@FreeBSD.org>
Mon, 18 Oct 2021 00:50:56 +0000 (17:50 -0700)
commitd95c0a12a2dd58b4b13cbc2d1a9fccd848f8ac5e
tree366d597fcdd33233154c4d879d0201cb2c4e648b
parent52e125c2bd302982c179ecc920cc9a6e166033d6
nfscl: Modify Close RPC so that it does not use "owner" for NFSv4.1/4.2

This patch modifies the function that does the Close RPC (nfsrpc_closerpc)
so that it does not use the open_owner (nfso_own) for NFSv4.1/4.2.
Use of the seqid in the open_owner structure is only needed for NFSv4.0.
Same applies to a NFSERR_STALESTATEID reply, which should only happen
for NFSv4.0.  This allows nfsrpc_closerpc() to be called when nfso_own
is no longer valid.  This, in turn, allows nfsrpc_closerpc() to be called
after the shared lock on the clientID is released, for NFSv4.1/4.2.

This is being done to prepare the code for a future patch that fixes
the case where an NFSv4.1/4.2 server replies NFSERR_DELAY to a Close
operation.

MFC after: 2 week
sys/fs/nfsclient/nfs_clrpcops.c