Subject: Re: mbuf external storage sharing
To: None <jonathan@dsg.stanford.edu>
From: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
List: tech-net
Date: 10/26/2004 05:24:42
hi,

> My sincere apologies for not responding: I was caught up with several
> other things, and I'm just catching up with NetBSD mail.

no problem.

> Once we bite off designing a scalable MP-safe network buffer
> allocation, the embedded m_ext is simply *not necessary* to acheive
> either your goals or my goals.

how can you change mapping state of shared external storage,
without the small shared header?
only way i can think of is grabbing the global lock and
iterate all mbufs which might reference the external storage.

> (See the FreeBSD-5 apporoach, either
> source-code or the slightly different slant in Bosko' Milecek's BSDcon
> paper, for an existence proof)
> 
> Thus, the embedded bm_ext idea is *NOT* orthogonal to a well-designed,
> scalable mbuf-allocation design.

as i repeatedly said, freebsd5 uses the similar small headers.
(which is embedded in slab headers for cluster mbufs,
and malloc'ed in the case of m_extadd.)
why do you ignore the point, or am i misunderstanding something?

YAMAMOTO Takashi