Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

NFSv4: Fix another potential state manager deadlock



Don't hold the NFSv4 sequence id while we check for open permission.
The call to ACCESS may block due to reboot recovery.

Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
parent f05c124a
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -1046,6 +1046,7 @@ static struct nfs4_state *nfs4_try_open_cached(struct nfs4_opendata *opendata)
		/* Save the delegation */
		nfs4_stateid_copy(&stateid, &delegation->stateid);
		rcu_read_unlock();
		nfs_release_seqid(opendata->o_arg.seqid);
		ret = nfs_may_open(state->inode, state->owner->so_cred, open_mode);
		if (ret != 0)
			goto out;