|
@@ -2560,6 +2560,7 @@ static int nfs41_check_expired_locks(struct nfs4_state *state)
|
|
|
if (status == -NFS4ERR_EXPIRED ||
|
|
|
status == -NFS4ERR_BAD_STATEID) {
|
|
|
clear_bit(NFS_LOCK_INITIALIZED, &lsp->ls_flags);
|
|
|
+ lsp->ls_stateid.type = NFS4_INVALID_STATEID_TYPE;
|
|
|
if (!recover_lost_locks)
|
|
|
set_bit(NFS_LOCK_LOST, &lsp->ls_flags);
|
|
|
} else if (status != NFS_OK) {
|
|
@@ -2605,6 +2606,7 @@ static int nfs41_check_open_stateid(struct nfs4_state *state)
|
|
|
clear_bit(NFS_O_WRONLY_STATE, &state->flags);
|
|
|
clear_bit(NFS_O_RDWR_STATE, &state->flags);
|
|
|
clear_bit(NFS_OPEN_STATE, &state->flags);
|
|
|
+ stateid->type = NFS4_INVALID_STATEID_TYPE;
|
|
|
}
|
|
|
return status;
|
|
|
}
|