On Thu, Mar 10, 2011 at 05:43:37PM +0800, Mi Jinlong wrote: > According to rfc5661, > > ca_maxresponsesize_cached: > > Like ca_maxresponsesize, but the maximum size of a reply that > will be stored in the reply cache (Section 2.10.6.1). For each > channel, the server MAY decrease this value, but MUST NOT > increase it. I wonder what the reason for that is--I can't see why the client would object to the server increasing this. Oh well, my as well observe the MUST NOT; applied. --b. > > the latest kernel(2.6.38-rc8) may increase the value for ignoring > request's ca_maxresponsesize_cached value. We should not ignore it. > > Signed-off-by: Mi Jinlong <mijinlong@xxxxxxxxxxxxxx> > --- > fs/nfsd/nfs4state.c | 3 ++- > 1 files changed, 2 insertions(+), 1 deletions(-) > > diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c > index 54b60bf..96edd02 100644 > --- a/fs/nfsd/nfs4state.c > +++ b/fs/nfsd/nfs4state.c > @@ -608,7 +608,8 @@ static void init_forechannel_attrs(struct nfsd4_channel_attrs *new, struct nfsd4 > u32 maxrpc = nfsd_serv->sv_max_mesg; > > new->maxreqs = numslots; > - new->maxresp_cached = slotsize + NFSD_MIN_HDR_SEQ_SZ; > + new->maxresp_cached = min_t(u32, req->maxresp_cached, > + slotsize + NFSD_MIN_HDR_SEQ_SZ); > new->maxreq_sz = min_t(u32, req->maxreq_sz, maxrpc); > new->maxresp_sz = min_t(u32, req->maxresp_sz, maxrpc); > new->maxops = min_t(u32, req->maxops, NFSD_MAX_OPS_PER_COMPOUND); > -- > 1.7.4.1 > > > -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html