Skip to content

Commit 70d136b

Browse files
author
Trond Myklebust
committed
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: Trond Myklebust <[email protected]>
1 parent 246afc0 commit 70d136b

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

fs/nfs/nfs4proc.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6198,6 +6198,10 @@ static void nfs4_delegreturn_done(struct rpc_task *task, void *calldata)
61986198
case -NFS4ERR_OLD_STATEID:
61996199
if (!nfs4_refresh_delegation_stateid(&data->stateid, data->inode))
62006200
nfs4_stateid_seqid_inc(&data->stateid);
6201+
if (data->args.bitmask) {
6202+
data->args.bitmask = NULL;
6203+
data->res.fattr = NULL;
6204+
}
62016205
goto out_restart;
62026206
case -NFS4ERR_ACCESS:
62036207
if (data->args.bitmask) {

0 commit comments

Comments
 (0)