Date: Sun, 20 Jul 2014 15:51:23 -0400 (EDT) From: Rick Macklem <rmacklem@uoguelph.ca> To: Garrett Wollman <wollman@hergotha.csail.mit.edu> Cc: jhb@freebsd.org, net@freebsd.org Subject: Re: NFS client READ performance on -current Message-ID: <1479705503.1118601.1405885883555.JavaMail.root@uoguelph.ca> In-Reply-To: <201407201556.s6KFuchL013781@hergotha.csail.mit.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
Garrett Wollman wrote: > In article <201407151034.54681.jhb@freebsd.org>, jhb@freebsd.org > writes: > > >Hmm, I am surprised by the m_pullup() behavior that it doesn't just > >notice that the first mbuf with a cluster has the desired data > >already > >and returns without doing anything. > > The specification of m_pullup() is that it returns a *writable* mbuf > (and thus also that the "length" provided is less than MHLEN). > Clusters are read-only. > I suspect you already know this, but being nit-picky... I think the cluster starts out rw, but become M_RDONLY (not M_WRITABLE()) when copied by reference. Since that will happen in TCP before a segment gets handed to a device driver for transmission, I think it will always be M_RDONLY in the device driver's output function. Does that sound correct? rick > -GAWollman > > _______________________________________________ > freebsd-net@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-net > To unsubscribe, send any mail to > "freebsd-net-unsubscribe@freebsd.org" >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1479705503.1118601.1405885883555.JavaMail.root>