freebsd-skq/sys/fs/nfs
Rick Macklem 93df87f208 Allow newnfs_request() to retry all callback RPCs with an NFSERR_DELAY reply.
The code in newnfs_request() retries RPCs that get a reply of NFSERR_DELAY,
but exempts certain NFSv4 operations. However, for callback RPCs, there
should not be any exemptions at this time. The code would have erroneously
exempted the CBRECALL callback, since it has the same operation number as
the CLOSE operation.
This patch fixes this by checking for a callback RPC (indicated by clp != NULL)
and not checking for exempt operations for callbacks.
This would have only affected the NFSv4 server when delegations are enabled
(they are not enabled by default) and the client replies to CBRECALL with
NFSERR_DELAY. This may never actually happen.
Spotted during code inspection.

MFC after:	2 weeks
2018-08-07 21:29:14 +00:00
..
nfs_commonacl.c Merge the pNFS server code from projects/pnfs-planb-server into head. 2018-06-12 19:36:32 +00:00
nfs_commonkrpc.c Allow newnfs_request() to retry all callback RPCs with an NFSERR_DELAY reply. 2018-08-07 21:29:14 +00:00
nfs_commonport.c Merge the pNFS server code from projects/pnfs-planb-server into head. 2018-06-12 19:36:32 +00:00
nfs_commonsubs.c Add an optional feature to the pNFS server. 2018-07-02 19:21:33 +00:00
nfs_var.h Modify the NFSv4.1 server so that it allows ReclaimComplete as done by ESXi 6.7. 2018-07-28 20:21:04 +00:00
nfs.h Modify the NFSv4.1 server so that it allows ReclaimComplete as done by ESXi 6.7. 2018-07-28 20:21:04 +00:00
nfscl.h sys/fs: further adoption of SPDX licensing ID tags. 2017-11-27 15:15:37 +00:00
nfsclstate.h Fix the pNFS client when mirrors aren't on the same machine. 2018-07-14 19:51:44 +00:00
nfsdport.h sys/fs: further adoption of SPDX licensing ID tags. 2017-11-27 15:15:37 +00:00
nfskpiport.h sys/fs: further adoption of SPDX licensing ID tags. 2017-11-27 15:15:37 +00:00
nfsm_subs.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
nfsport.h Move four functions in nfscl.ko to nfscommon.ko. 2018-06-14 10:00:19 +00:00
nfsproto.h Modify the reasons for not issuing a delegation in the NFSv4.1 server. 2018-07-16 21:32:50 +00:00
nfsrvcache.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
nfsrvstate.h Add an optional feature to the pNFS server. 2018-07-02 19:21:33 +00:00
nfsv4_errstr.h sys/fs: further adoption of SPDX licensing ID tags. 2017-11-27 15:15:37 +00:00
rpcv2.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
xdr_subs.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00