Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 25 Oct 2001 14:08:30 -0700
From:      Bill Fenner <fenner@research.att.com>
To:        rizzo@aciri.org
Cc:        wollman@khavrinen.lcs.mit.edu, net@freebsd.org
Subject:   Re: performance issues with M_PREPEND on clusters
Message-ID:  <200110252108.OAA26017@windsor.research.att.com>
References:   <20011023110307.A34494@iguana.aciri.org> <200110231917.f9NJH4T32996@khavrinen.lcs.mit.edu> <20011023140318.A35869@iguana.aciri.org>

next in thread | previous in thread | raw e-mail | index | archive | help

Luigi Rizzo <rizzo@aciri.org> said:
>On Tue, Oct 23, 2001 at 03:17:04PM -0400, Garrett Wollman wrote:
>> ... the whole purpose of m_pullup is to
>> *guarantee* that the data in question will never be shared.
>
>Technically, it is correct that m_pullup guarantees that the data
>in question will never be shared, but it seems to me more an artifact
>of its implementation than a real goal.

It was not a design goal (in fact, the 4.4 daemon book actually claims
"If the dtom() macro is eventually removed, m_pullup() will no longer
be forced to move data from mbuf clusters."  However, the "ensure that
the data is not shared" side effect is heavily in at least the multicast
code; the bridge code seem to also rely on it.  I wouldn't be surprised
if there were more.

  Bill

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200110252108.OAA26017>