Commit b5756208 authored by Trond Myklebust's avatar Trond Myklebust
Browse files

NFSv4: fail nfs4_refresh_delegation_stateid() when the delegation was revoked



If the delegation was revoked, we don't want to retry the delegreturn.

Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
parent 457a5042
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -1190,7 +1190,8 @@ bool nfs4_refresh_delegation_stateid(nfs4_stateid *dst, struct inode *inode)
	rcu_read_lock();
	delegation = rcu_dereference(NFS_I(inode)->delegation);
	if (delegation != NULL &&
	    nfs4_stateid_match_other(dst, &delegation->stateid)) {
	    nfs4_stateid_match_other(dst, &delegation->stateid) &&
	    !test_bit(NFS_DELEGATION_REVOKED, &delegation->flags)) {
		dst->seqid = delegation->stateid.seqid;
		ret = true;
	}