Messages in this thread | | | Date | Tue, 3 Oct 2006 18:02:02 +1000 | From | Greg Banks <> | Subject | Re: [NFS] [PATCH 008 of 11] knfsd: Prepare knfsd for support of rsize/wsize of up to 1MB, over TCP. |
| |
On Tue, Oct 03, 2006 at 03:41:43PM +1000, Neil Brown wrote: > Comments on the below?
Looks ok, except...
> @@ -57,7 +57,8 @@ struct svc_serv { > struct svc_stat * sv_stats; /* RPC statistics */ > spinlock_t sv_lock; > unsigned int sv_nrthreads; /* # of server threads */ > - unsigned int sv_bufsz; /* datagram buffer size */ > + unsigned int sv_max_payload; /* datagram payload size */ > + unsigned int sv_max_mesg; /* bufsz + 1 page for overheads */
Presumably the comment should read "max_payload + 1 page..." ?
> @@ -414,9 +415,11 @@ svc_init_buffer(struct svc_rqst *rqstp, > int pages; > int arghi; > > - if (size > RPCSVC_MAXPAYLOAD) > - size = RPCSVC_MAXPAYLOAD; > - pages = 2 + (size+ PAGE_SIZE -1) / PAGE_SIZE; > + if (size > RPCSVC_MAXPAYLOAD + PAGE_SIZE) > + size = RPCSVC_MAXPAYLOAD + PAGE_SIZE; > + pages = size + PAGE_SIZE; /* extra page as we hold both request and reply. > + * We assume one is at most one page > + */
Isn't there a divide by PAGE_SIZE missing here? Looks like we'll be allocating a *lot* of pages ;-)
Greg. -- Greg Banks, R&D Software Engineer, SGI Australian Software Group. I don't speak for SGI. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |