Commit 4c96cb56 authored by Chuck Lever's avatar Chuck Lever Committed by J. Bruce Fields

NFSD: Clean up nfsd_dispatch() variables

For consistency and code legibility, use a similar organization of
variables as svc_generic_dispatch().
Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
parent 383c440d
...@@ -1013,13 +1013,13 @@ static bool nfs_request_too_big(struct svc_rqst *rqstp, ...@@ -1013,13 +1013,13 @@ static bool nfs_request_too_big(struct svc_rqst *rqstp,
*/ */
int nfsd_dispatch(struct svc_rqst *rqstp, __be32 *statp) int nfsd_dispatch(struct svc_rqst *rqstp, __be32 *statp)
{ {
const struct svc_procedure *proc; const struct svc_procedure *proc = rqstp->rq_procinfo;
__be32 nfserr; struct kvec *argv = &rqstp->rq_arg.head[0];
__be32 *nfserrp; struct kvec *resv = &rqstp->rq_res.head[0];
__be32 nfserr, *nfserrp;
dprintk("nfsd_dispatch: vers %d proc %d\n", dprintk("nfsd_dispatch: vers %d proc %d\n",
rqstp->rq_vers, rqstp->rq_proc); rqstp->rq_vers, rqstp->rq_proc);
proc = rqstp->rq_procinfo;
if (nfs_request_too_big(rqstp, proc)) { if (nfs_request_too_big(rqstp, proc)) {
dprintk("nfsd: NFSv%d argument too large\n", rqstp->rq_vers); dprintk("nfsd: NFSv%d argument too large\n", rqstp->rq_vers);
...@@ -1031,7 +1031,7 @@ int nfsd_dispatch(struct svc_rqst *rqstp, __be32 *statp) ...@@ -1031,7 +1031,7 @@ int nfsd_dispatch(struct svc_rqst *rqstp, __be32 *statp)
* (necessary in the NFSv4.0 compound case) * (necessary in the NFSv4.0 compound case)
*/ */
rqstp->rq_cachetype = proc->pc_cachetype; rqstp->rq_cachetype = proc->pc_cachetype;
if (!proc->pc_decode(rqstp, (__be32 *)rqstp->rq_arg.head[0].iov_base)) { if (!proc->pc_decode(rqstp, argv->iov_base)) {
dprintk("nfsd: failed to decode arguments!\n"); dprintk("nfsd: failed to decode arguments!\n");
*statp = rpc_garbage_args; *statp = rpc_garbage_args;
return 1; return 1;
...@@ -1050,9 +1050,8 @@ int nfsd_dispatch(struct svc_rqst *rqstp, __be32 *statp) ...@@ -1050,9 +1050,8 @@ int nfsd_dispatch(struct svc_rqst *rqstp, __be32 *statp)
* Need to grab the location to store the status, as * Need to grab the location to store the status, as
* NFSv4 does some encoding while processing * NFSv4 does some encoding while processing
*/ */
nfserrp = rqstp->rq_res.head[0].iov_base nfserrp = resv->iov_base + resv->iov_len;
+ rqstp->rq_res.head[0].iov_len; resv->iov_len += sizeof(__be32);
rqstp->rq_res.head[0].iov_len += sizeof(__be32);
nfserr = proc->pc_func(rqstp); nfserr = proc->pc_func(rqstp);
nfserr = map_new_errors(rqstp->rq_vers, nfserr); nfserr = map_new_errors(rqstp->rq_vers, nfserr);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment