Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 26 Aug 2013 16:00:17 +0200
From:      Andre Oppermann <andre@freebsd.org>
To:        Gleb Smirnoff <glebius@FreeBSD.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r254527 - in head/sys: net80211 netinet sys
Message-ID:  <521B5F71.4030507@freebsd.org>
In-Reply-To: <20130826094329.GP4574@glebius.int.ru>
References:  <20130826094329.GP4574@glebius.int.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
On 26.08.2013 11:43, Gleb Smirnoff wrote:
> A> Author: andre
> A> Date: Mon Aug 19 14:25:11 2013
> A> New Revision: 254527
> A> URL: http://svnweb.freebsd.org/changeset/base/254527
> A>
> A> Log:
> A>   Reorder the mbuf defines to make more sense and group related flags
> A>   together.
> A>
> A>   Add M_FLAG_PRINTF for use with printf(9) %b indentifier.
> A>
> A>   Use the generic mbuf flags print names in the net80211 code and adjust
> A>   the protocol specific bits for their new positions.
> A>
> A>   Change SCTP M_PROTO mapping from 5 to 1 to fit within the 16bit field
> A>   they use internally to store some additional information.
> A>
> A>   Discussed with:	trociny, glebius
>
> The first part: "reorder the mbuf flag defines" wasn't actually discussed.

It was part of the patch to the email I sent you, and a couple of others,
to which you replied with no objection to the M_FLAGS cleanup.  It wasn't
explicitly spelled out but very visible in the patch.

> Tossing values of M_BCAST, M_MCAST, M_VLANTAG for no value except code
> tidyness isn't a safe idea. These are the flags that device drivers use.
> After this change binary drivers are still loadable but would be buggy.

As I already explained elsewhere, on -current only KLD's compiled at the same
time/revision as the kernel are supported.  It has been this way as long as
I can remember.  There never was any guarantee, not even implicit, that a KLD
from r254000 will continue to work with a kernel from r254527.  In fact, if
it were, it would be almost impossible to develop anything on -current.

On -stable we do have this ABI+API guarantee, so a KLD from 9.0 is supposed
to work on 9.2 as well and we generally keep that promise.

> We allow ourselves ABI changes in head, but this doesn't mean that we
> should do them for no important reason.

The "important" reason are the later updates to the mbuf headers and that
it simply doesn't make sense to keep the defines spaghetti while the whole
thing is being overhauled.

It seems from a technical point of view both arguments, maintain bits vs.
reordering, are rather weak and prone to bike-shedding. ;)  It certainly
doesn't make sense to change again and revert it just for the sake of it.

-- 
Andre




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