aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfsd/nfs4proc.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/nfsd/nfs4proc.c')
-rw-r--r--fs/nfsd/nfs4proc.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/fs/nfsd/nfs4proc.c b/fs/nfsd/nfs4proc.c
index ae21a4efe36c..e6a0f314fdbe 100644
--- a/fs/nfsd/nfs4proc.c
+++ b/fs/nfsd/nfs4proc.c
@@ -513,9 +513,8 @@ nfsd4_read(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
513 513
514 nfs4_lock_state(); 514 nfs4_lock_state();
515 /* check stateid */ 515 /* check stateid */
516 if ((status = nfs4_preprocess_stateid_op(&cstate->current_fh, 516 if ((status = nfs4_preprocess_stateid_op(cstate, &read->rd_stateid,
517 &read->rd_stateid, 517 RD_STATE, &read->rd_filp))) {
518 RD_STATE, &read->rd_filp))) {
519 dprintk("NFSD: nfsd4_read: couldn't process stateid!\n"); 518 dprintk("NFSD: nfsd4_read: couldn't process stateid!\n");
520 goto out; 519 goto out;
521 } 520 }
@@ -646,7 +645,7 @@ nfsd4_setattr(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
646 645
647 if (setattr->sa_iattr.ia_valid & ATTR_SIZE) { 646 if (setattr->sa_iattr.ia_valid & ATTR_SIZE) {
648 nfs4_lock_state(); 647 nfs4_lock_state();
649 status = nfs4_preprocess_stateid_op(&cstate->current_fh, 648 status = nfs4_preprocess_stateid_op(cstate,
650 &setattr->sa_stateid, WR_STATE, NULL); 649 &setattr->sa_stateid, WR_STATE, NULL);
651 nfs4_unlock_state(); 650 nfs4_unlock_state();
652 if (status) { 651 if (status) {
@@ -686,8 +685,7 @@ nfsd4_write(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
686 return nfserr_inval; 685 return nfserr_inval;
687 686
688 nfs4_lock_state(); 687 nfs4_lock_state();
689 status = nfs4_preprocess_stateid_op(&cstate->current_fh, stateid, 688 status = nfs4_preprocess_stateid_op(cstate, stateid, WR_STATE, &filp);
690 WR_STATE, &filp);
691 if (filp) 689 if (filp)
692 get_file(filp); 690 get_file(filp);
693 nfs4_unlock_state(); 691 nfs4_unlock_state();