Garrett Wollman wrote:
> In article <201407151034.54681....@freebsd.org>, j...@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-unsubscr...@freebsd.org"
> 
_______________________________________________
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"

Reply via email to