mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-05 01:54:09 +08:00
nfsd4: simplify lock openmode check
Note that the special handling for the lock stateid case is already done
by nfs4_check_openmode() (as of 0292191417
"nfsd4: fix openmode checking on IO using lock stateid") so we no longer
need these two cases in the caller.
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
This commit is contained in:
parent
a9004abc34
commit
9afb978400
@ -3453,16 +3453,11 @@ nfs4_preprocess_seqid_op(struct nfsd4_compound_state *cstate, u32 seqid,
|
||||
if (!nfsd4_has_session(cstate) &&
|
||||
!same_clid(&clp->cl_clientid, lockclid))
|
||||
return nfserr_bad_stateid;
|
||||
/* stp is the open stateid */
|
||||
status = nfs4_check_openmode(stp, lkflg);
|
||||
if (status)
|
||||
return status;
|
||||
} else {
|
||||
/* stp is the lock stateid */
|
||||
status = nfs4_check_openmode(stp->st_openstp, lkflg);
|
||||
if (status)
|
||||
return status;
|
||||
}
|
||||
}
|
||||
/* stp is the open stateid */
|
||||
status = nfs4_check_openmode(stp, lkflg);
|
||||
if (status)
|
||||
return status;
|
||||
}
|
||||
|
||||
if (nfs4_check_fh(current_fh, stp)) {
|
||||
|
Loading…
Reference in New Issue
Block a user