Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 Jul 2002 21:34:51 -0700
From:      Alfred Perlstein <bright@mu.org>
To:        Bosko Milekic <bmilekic@unixdaemons.com>
Cc:        Julian Elischer <julian@elischer.org>, Luigi Rizzo <rizzo@icir.org>, freebsd-net@FreeBSD.ORG
Subject:   Re: mbuf external buffer reference counters
Message-ID:  <20020712043451.GE97638@elvis.mu.org>
In-Reply-To: <20020711222725.A5284@unixdaemons.com>
References:  <20020711171255.A19014@unixdaemons.com> <Pine.BSF.4.21.0207111606440.47612-100000@InterJet.elischer.org> <20020711222725.A5284@unixdaemons.com>

next in thread | previous in thread | raw e-mail | index | archive | help
* Bosko Milekic <bmilekic@unixdaemons.com> [020711 19:28] wrote:
> 
> On Thu, Jul 11, 2002 at 04:10:32PM -0700, Julian Elischer wrote:
> > Don't forget that "external" does not neccesarily mean "cluster".
> > I still consider the method used in (hmm was it NetBSD or OSF/1?)
> > to be very good..
> >
> > mbufs that referred to the same object were linked together.
> > I forget the details exactly.  maybe someone else can remember..
> > it did it without ref counts somehow..
> 
>  Yes, this is in NetBSD still and it is very elegant.  I remember
>  looking at this a long time ago but to be honest, the reason I didn't
>  implement it then first escaped me.  However, thanks to David Malone's
>  awesome commit messages, I found it:
> 
>  rev 1.53 of sys/sys/mbuf.h, extract:
> [...]
>  "NetBSD's system of linked lists of mbufs was cosidered, but Alfred
>  felt it would have locking issues when the kernel was made more
>  SMP friendly."
> [...]
> 
>  I think it's almost clear now that there are, in fact, no SMP issues
>  with it (we don't do per-cluster locking, or anything ridiculous like
>  that), so unless Alfred has the reason again, I'll consider that method
>  again instead.  Thanks for the constructive feedback.

Yes it was NetBSD that did this.

How do you plan on manipulating a linked list without switching     
from a simple atomic_int/dec to a complex global or hashed mutex
operation?

-- 
-Alfred Perlstein [alfred@freebsd.org]
'Instead of asking why a piece of software is using "1970s technology,"
 start asking why software is ignoring 30 years of accumulated wisdom.'
Tax deductible donations for FreeBSD: http://www.freebsdfoundation.org/

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?20020712043451.GE97638>