Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 04 Oct 2000 10:15:19 -0700
From:      Julian Elischer <julian@elischer.org>
To:        net@freebsd.org
Subject:   new mbuf stuff (dwmalone commit)
Message-ID:  <39DB65A7.2FB8B884@elischer.org>

next in thread | raw e-mail | index | archive | help
The new reference code could cause a lot of grief
in the future for One company I know of.
This is because the new reference counting code doesn't take into
account 
the reason that the old reference counting code for external storage 
was added in the first place.

The old code had two methods.
One to Add a reference and one to decrement a reference,
however the new code only leaves the code to decrement the reference.

This means that code that supplies it's own external memory types
has no way to notify it's own memory manager that there are
multiple references to an object. 

My guess is that it was assumed that the underlying memory manager
has no reason to know ho many references are held on an object, and that
there is now just a single reference from "the mbuf system" which is
removed
when the last mbuf internal reference is removed..

One system I know however had many objects, sorted in order of "number
of references"
in order to have the heavily used items near the head fo a list. Items
with only
one reference were "incomplete" and unlikely to be searched for.

This system can no longer work. (Luckily it may never get ported to
FreeBSD-5)
(It was on 2.x)

At this time I don't see a need to change it back, but it's just a
'heads up'
that this sort of behaviour should be considered..




-- 
      __--_|\  Julian Elischer
     /       \ julian@elischer.org
    (   OZ    ) World tour 2000
---> X_.---._/  presently in:  Perth
            v


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?39DB65A7.2FB8B884>