NFSD: Remove NFSD_BUFSIZE
Clean up: The documenting comment for NFSD_BUFSIZE is quite stale. NFSD_BUFSIZE is used only for NFSv4 Reply these days; never for NFSv2 or v3, and never for RPC Calls. Even so, the byte count estimate does not include the size of the NFSv4 COMPOUND Reply HEADER or the RPC auth flavor. Reviewed-by: Jeff Layton <jlayton@kernel.org> Reviewed-by: NeilBrown <neil@brown.name> Signed-off-by: Chuck Lever <chuck.lever@oracle.com>pull/1112/head
parent
0af165bb90
commit
58d721684d
|
|
@ -3845,7 +3845,7 @@ static const struct svc_procedure nfsd_procedures4[2] = {
|
|||
.pc_ressize = sizeof(struct nfsd4_compoundres),
|
||||
.pc_release = nfsd4_release_compoundargs,
|
||||
.pc_cachetype = RC_NOCACHE,
|
||||
.pc_xdrressize = NFSD_BUFSIZE/4,
|
||||
.pc_xdrressize = 3+NFSSVC_MAXBLKSIZE/4,
|
||||
.pc_name = "COMPOUND",
|
||||
},
|
||||
};
|
||||
|
|
|
|||
|
|
@ -4406,7 +4406,7 @@ nfsd4_sequence(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
|
|||
nfserr_rep_too_big;
|
||||
if (xdr_restrict_buflen(xdr, buflen - rqstp->rq_auth_slack))
|
||||
goto out_put_session;
|
||||
svc_reserve(rqstp, buflen);
|
||||
svc_reserve_auth(rqstp, buflen);
|
||||
|
||||
status = nfs_ok;
|
||||
/* Success! accept new slot seqid */
|
||||
|
|
|
|||
|
|
@ -2564,7 +2564,7 @@ nfsd4_decode_compound(struct nfsd4_compoundargs *argp)
|
|||
/* Sessions make the DRC unnecessary: */
|
||||
if (argp->minorversion)
|
||||
cachethis = false;
|
||||
svc_reserve(argp->rqstp, max_reply + readbytes);
|
||||
svc_reserve_auth(argp->rqstp, max_reply + readbytes);
|
||||
argp->rqstp->rq_cachetype = cachethis ? RC_REPLBUFF : RC_NOCACHE;
|
||||
|
||||
argp->splice_ok = nfsd_read_splice_ok(argp->rqstp);
|
||||
|
|
|
|||
|
|
@ -50,19 +50,6 @@ bool nfsd_support_version(int vers);
|
|||
/* NFSv2 is limited by the protocol specification, see RFC 1094 */
|
||||
#define NFSSVC_MAXBLKSIZE_V2 (8*1024)
|
||||
|
||||
|
||||
/*
|
||||
* Largest number of bytes we need to allocate for an NFS
|
||||
* call or reply. Used to control buffer sizes. We use
|
||||
* the length of v3 WRITE, READDIR and READDIR replies
|
||||
* which are an RPC header, up to 26 XDR units of reply
|
||||
* data, and some page data.
|
||||
*
|
||||
* Note that accuracy here doesn't matter too much as the
|
||||
* size is rounded up to a page size when allocating space.
|
||||
*/
|
||||
#define NFSD_BUFSIZE ((RPC_MAX_HEADER_WITH_AUTH+26)*XDR_UNIT + NFSSVC_MAXBLKSIZE)
|
||||
|
||||
struct readdir_cd {
|
||||
__be32 err; /* 0, nfserr, or nfserr_eof */
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in New Issue