nfsd4: simplify lock openmode check
authorJ. Bruce Fields <bfields@redhat.com>
Mon, 22 Aug 2011 15:39:07 +0000 (11:39 -0400)
committerJ. Bruce Fields <bfields@redhat.com>
Sat, 27 Aug 2011 18:21:27 +0000 (14:21 -0400)
Note that the special handling for the lock stateid case is already done
by nfs4_check_openmode() (as of 02921914170e3b7fea1cd82dac9713685d2de5e2
"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>
fs/nfsd/nfs4state.c

index 14c8dd64e136930eda8c439ac38ed536c769a063..aafc41a0a8d0008890b8b5fd5de7f9777329c4ab 100644 (file)
@@ -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)) {