summaryrefslogtreecommitdiffstats
path: root/fs/nfs/delegation.h
diff options
context:
space:
mode:
authorTrond Myklebust <trond.myklebust@primarydata.com>2014-11-12 14:44:49 -0500
committerTrond Myklebust <trond.myklebust@primarydata.com>2014-11-12 17:01:33 -0500
commit0c116cadd94b16b30b1dd90d38b2784d9b39b01a (patch)
tree05de2078e0257bead5b569bf03f6dcaad234760d /fs/nfs/delegation.h
parent4dfd4f7af0afd201706ad186352ca423b0f17d4b (diff)
downloadlinux-0c116cadd94b16b30b1dd90d38b2784d9b39b01a.tar.gz
linux-0c116cadd94b16b30b1dd90d38b2784d9b39b01a.tar.bz2
linux-0c116cadd94b16b30b1dd90d38b2784d9b39b01a.zip
NFSv4.1: nfs41_clear_delegation_stateid shouldn't trust NFS_DELEGATED_STATE
This patch removes the assumption made previously, that we only need to check the delegation stateid when it matches the stateid on a cached open. If we believe that we hold a delegation for this file, then we must assume that its stateid may have been revoked or expired too. If we don't test it then our state recovery process may end up caching open/lock state in a situation where it should not. We therefore rename the function nfs41_clear_delegation_stateid as nfs41_check_delegation_stateid, and change it to always run through the delegation stateid test and recovery process as outlined in RFC5661. http://lkml.kernel.org/r/CAN-5tyHwG=Cn2Q9KsHWadewjpTTy_K26ee+UnSvHvG4192p-Xw@mail.gmail.com Cc: stable@vger.kernel.org Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Diffstat (limited to 'fs/nfs/delegation.h')
0 files changed, 0 insertions, 0 deletions