Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Aug 2000 14:51:57 -0700 (PDT)
From:      Archie Cobbs <archie@whistle.com>
To:        Bosko Milekic <bmilekic@dsuper.net>
Cc:        freebsd-net@FreeBSD.ORG
Subject:   Re: Proposal to clarify mbuf handling rules
Message-ID:  <200008302151.OAA33212@bubba.whistle.com>
In-Reply-To: <Pine.BSF.4.21.0008301656240.10773-100000@jehovah.technokratis.com> "from Bosko Milekic at Aug 30, 2000 05:05:05 pm"

next in thread | previous in thread | raw e-mail | index | archive | help
Bosko Milekic writes:
> > It makes sense to put the info about the shared mbuf data into the
> > (single) union mext_descr that all the mbuf's point to. But why
> > not put ext_flags in there as well?
> 
> 	Simply because we don't need it shared. And since we don't need it
>   shared, then we don't need to waste another 4 bytes per M_EXT mbuf for
>   it.
> 
> > Also, why are "perms" and "refcnt" in the same union? It seems like
> > you will lose the "perms" information when you increase refcnt to 2,
> > leading to the same problem mentioned before (a shared mbuf data
> > region going from 2 -> 1 reference does not become writable again).
> 
> 	Uhm, no. They are _not_ in the same union. They are in the same
>   structure, which is a member of a union containing both that structure
>   and a next_desc pointer for the union free list. Read the code right now
>   in -CURRENT, look for mext_refcnt union format.

OK, that makes more sense... I misread it before.

> > What is "next_desc" used for? How does that affect this?
> 
> 	For the free list, used solely by the mext_refcnt (to be mext_descr)
>   allocator.

OK.. so, no effect.

So.. this all sounds good to me now.

-Archie

___________________________________________________________________________
Archie Cobbs   *   Whistle Communications, Inc.  *   http://www.whistle.com


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?200008302151.OAA33212>