NFSv4: Ignore NFS4ERR_OLD_STATEID in nfs41_check_open_stateid()
If the call to TEST_STATEID returns NFS4ERR_OLD_STATEID, then it just means we raced with other calls to OPEN. Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
This commit is contained in:
parent
1feb26162b
commit
c0ca0e5934
|
@ -2553,9 +2553,8 @@ static int nfs41_check_open_stateid(struct nfs4_state *state)
|
||||||
clear_bit(NFS_O_RDWR_STATE, &state->flags);
|
clear_bit(NFS_O_RDWR_STATE, &state->flags);
|
||||||
clear_bit(NFS_OPEN_STATE, &state->flags);
|
clear_bit(NFS_OPEN_STATE, &state->flags);
|
||||||
stateid->type = NFS4_INVALID_STATEID_TYPE;
|
stateid->type = NFS4_INVALID_STATEID_TYPE;
|
||||||
}
|
|
||||||
if (status != NFS_OK)
|
|
||||||
return status;
|
return status;
|
||||||
|
}
|
||||||
if (nfs_open_stateid_recover_openmode(state))
|
if (nfs_open_stateid_recover_openmode(state))
|
||||||
return -NFS4ERR_OPENMODE;
|
return -NFS4ERR_OPENMODE;
|
||||||
return NFS_OK;
|
return NFS_OK;
|
||||||
|
|
Loading…
Reference in New Issue