Skip site navigation (1)Skip section navigation (2)
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>