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

Commit b022032e authored by fanchaoting's avatar fanchaoting Committed by J. Bruce Fields
Browse files

nfsd: don't run get_file if nfs4_preprocess_stateid_op return error



we should return error status directly when nfs4_preprocess_stateid_op
return error.

Signed-off-by: default avatarfanchaoting <fanchaoting@cn.fujitsu.com>
Cc: stable@vger.kernel.org
Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
parent 89876f8c
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -953,14 +953,14 @@ nfsd4_write(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
	nfs4_lock_state();
	status = nfs4_preprocess_stateid_op(SVC_NET(rqstp),
					cstate, stateid, WR_STATE, &filp);
	if (filp)
		get_file(filp);
	nfs4_unlock_state();

	if (status) {
		nfs4_unlock_state();
		dprintk("NFSD: nfsd4_write: couldn't process stateid!\n");
		return status;
	}
	if (filp)
		get_file(filp);
	nfs4_unlock_state();

	cnt = write->wr_buflen;
	write->wr_how_written = write->wr_stable_how;