Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 7 Jan 2015 23:48:53 +0300
From:      Gleb Smirnoff <glebius@FreeBSD.org>
To:        Robert Watson <rwatson@FreeBSD.org>
Cc:        svn-src-head@freebsd.org, John-Mark Gurney <jmg@funkthat.com>, src-committers@freebsd.org, svn-src-all@freebsd.org
Subject:   Re: svn commit: r276750 - in head: share/man/man9 sys/contrib/ipfilter/netinet sys/dev/an sys/dev/bge sys/dev/ce sys/dev/cm sys/dev/cp sys/dev/cs sys/dev/ctau sys/dev/ed sys/dev/ex sys/dev/fe sys/dev/h...
Message-ID:  <20150107204853.GH15484@FreeBSD.org>
In-Reply-To: <alpine.BSF.2.11.1501071814350.36266@fledge.watson.org>
References:  <201501061259.t06CxcTc096488@svn.freebsd.org> <20150107174430.GQ1949@funkthat.com> <alpine.BSF.2.11.1501071814350.36266@fledge.watson.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Jan 07, 2015 at 06:16:15PM +0000, Robert Watson wrote:
R> On Wed, 7 Jan 2015, John-Mark Gurney wrote:
R> 
R> >> Log:
R> >>   In order to reduce use of M_EXT outside of the mbuf allocator and
R> >>   socket-buffer implementations, introduce a return value for MCLGET()
R> >>   (and m_cljget() that underlies it) to allow the caller to avoid testing
R> >>   M_EXT itself.  Update all callers to use the return value.
R> >>
R> >>   With this change, very few network device drivers remain aware of
R> >>   M_EXT; the primary exceptions lie in mbuf-chain pretty printers for
R> >>   debugging, and in a few cases, custom mbuf and cluster allocation
R> >>   implementations.
R> >>
R> >>   NB: This is a difficult-to-test change as it touches many drivers for
R> >>   which I don't have physical devices.  Instead we've gone for intensive
R> >>   review, but further post-commit review would definitely be appreciated
R> >>   to spot errors where changes could not easily be made mechanically,
R> >>   but were largely mechanical in nature.
R> >
R> > Shouldn't this come w/ a FreeBSD version bump for drivers to use?
R> 
R> Yes, probably.  Old drivers will continue to work fine in not checking the 
R> return value (for now), but drivers seeing backporting will probably want a 
R> __FreeBSD_version ifdef.  I'll do a commit to bump the version number today.
R> 
R> (In my local tree, M_EXT is renamed _M_EXT unless MBUF_PRIVATE is defined, 
R> which really is quite a significant KPI change -- I'm not yet sure if I'm 
R> going to push that into FreeBSD 11 or not.)

IMO, you should do the push :)

The faster we refactor the mbuf KPI, the better. Better do the surgery in
one fast cut rather then do it in an endless serie of small but painful
cuts.

Note that I'm still hoping of pushing projects/ifnet to 11, which is
a much bigger KPI change from drivers.

-- 
Totus tuus, Glebius.



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