Commit 70d136b2 authored by Trond Myklebust's avatar Trond Myklebust
Browse files

NFSv4: Don't retry the GETATTR on old stateid in nfs4_delegreturn_done()



If the server returns NFS4ERR_OLD_STATEID, then just skip retrying the
GETATTR when replaying the delegreturn compound. We know nothing will
have changed on the server.

Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
parent 246afc0a
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -6198,6 +6198,10 @@ static void nfs4_delegreturn_done(struct rpc_task *task, void *calldata)
	case -NFS4ERR_OLD_STATEID:
		if (!nfs4_refresh_delegation_stateid(&data->stateid, data->inode))
			nfs4_stateid_seqid_inc(&data->stateid);
		if (data->args.bitmask) {
			data->args.bitmask = NULL;
			data->res.fattr = NULL;
		}
		goto out_restart;
	case -NFS4ERR_ACCESS:
		if (data->args.bitmask) {