mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 16:54:27 +00:00
NFSv4: nfs_set_open_stateid must not trigger state recovery for closed state
In nfs_set_open_stateid_locked, we must ignore stateids from closed state. Reported-by: Andrew W Elble <aweits@rit.edu> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
This commit is contained in:
parent
46280d9d3d
commit
e1fff5df6e
1 changed files with 2 additions and 1 deletions
|
@ -1541,7 +1541,8 @@ static void nfs_set_open_stateid_locked(struct nfs4_state *state,
|
||||||
write_seqlock(&state->seqlock);
|
write_seqlock(&state->seqlock);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!nfs4_stateid_match_other(stateid, &state->open_stateid)) {
|
if (test_bit(NFS_OPEN_STATE, &state->flags) &&
|
||||||
|
!nfs4_stateid_match_other(stateid, &state->open_stateid)) {
|
||||||
nfs4_stateid_copy(freeme, &state->open_stateid);
|
nfs4_stateid_copy(freeme, &state->open_stateid);
|
||||||
nfs_test_and_clear_all_open_stateid(state);
|
nfs_test_and_clear_all_open_stateid(state);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue