Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 4 Oct 2018 16:22:25 +0000
From:      Brooks Davis <brooks@freebsd.org>
To:        freebsd-arch@freebsd.org
Cc:        freebsd-net@freebsd.org, freebsd-fcp@freebsd.org, freebsd-stable@freebsd.org
Subject:   Re: FCP-0101: Deprecating most 10/100 Ethernet drivers
Message-ID:  <20181004162225.GE74146@spindle.one-eyed-alien.net>
In-Reply-To: <20181003210516.GA71565@spindle.one-eyed-alien.net>
References:  <20181003210516.GA71565@spindle.one-eyed-alien.net>

next in thread | previous in thread | raw e-mail | index | archive | help

--VdOwlNaOFKGAtAAV
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

>>> Please direct replies to freebsd-arch <<<

A few points of clarification:

Rod correctly points out that this message makes it look like the FCP is
a done deal as written.  This is not the case and we welcome feedback
on the entire proposal.  IMO, soliciting input on the list of drivers
along with the proposed process is a way to keep discussion concrete so
we will proceed with both.

It was asked: when does iflib conversion need to occur to save a driver?
My proposed plan it to proceed with deprecation notices of otherwise
unpopular drivers, but conversion can come in and remove those notices
at and upto (or even after) removal from the tree.

In an effort to save some email, we will be moving rl(4) to the list of
drivers to STAY as it has proved itself to be popular.  A few others
appear to be well on their way so keep the reports coming.

Thanks,
Brooks

P.S. As a person who has edited every driver in the tree multiple times
in the last year (mostly in an external tree), I will consider this
process successful even if we keep the majority of listed drivers in the
tree.

On Wed, Oct 03, 2018 at 09:05:16PM +0000, Brooks Davis wrote:
> >>> Please direct replies to freebsd-arch <<<
>=20
> FCP-01010 (https://github.com/freebsd/fcp/blob/master/fcp-0101.md)
> outlines a plan to deprecate most 10/100 Ethernet drivers in FreeBSD 12
> and remove them in FreeBSD 13 to reduce the burden of maintaining and
> improving the network stack.  We have discussed this within the
> core team and intend to move forward as proposed.  We are solictiting
> feedback on the list of drivers to be excepted from removal.
>=20
> The current list of drivers slated for REMOVAL is:
>=20
> ae, bfe, bm, cs, dme, ed, ep, ex, fe, pcn, rl, sf, smc, sn,
> ste, tl, tx, txp, vx, wb, xe
>=20
> The current list of drivers that will STAY in the tree is:
>=20
> dc, ffec, fxpl, hme, le, sis, vr, xl
>=20
> The criteria for exception are:
>  - Popular in applications where it is likely to be deployed beyond the
>    support lifetime of FreeBSD 12 (late 2023).
>    - 5 reports of uses in the wild on machines running FreeBSD 12 will be
>      deemed satisfy the "popular"
>      requirement.
>  - Required to make a well supported embedded or emulation platform usabl=
e.
>  - Ported to use iflib (reducing future maintenance cost.)
>=20
> Please reply to this message with nominations to the exception list.
>=20
> The full FCP-0101 is included below.
>=20
> -- Brooks
>=20
> ---
> authors: Brooks Davis <brooks@freebsd.org>
> state: feedback
> ---
>=20
> # FCP 101: Deprecation and removal of 10/100 Ethernet drivers
>=20
> Deprecate most 10 and 10/100Mbps Ethernet drivers and remove them before
> FreeBSD 13.
>=20
> ## Problem Statement
>=20
> Each network driver creates drag for the project as we attempt to
> improve the network stack or provide new features such as expanded
> 32-bit compatibility.  For example, the author has edited every single
> NIC driver more than once in the past year to update management (`ioctl`)
> interfaces.  We could improve this situation by converting drivers to
> iflib, but each additional driver takes work.
>=20
> 10 and 100 megabit Ethernet drivers are largely irrelevant today
> and we have a significant number of them in the tree.  The ones that
> are no longer used and/or are not known to be working need to be
> removed due to the significant ongoing 'tax' on new development.
>=20
> For at least a decade, most systems (including small embedded
> systems) have shipped with gigabit Ethernet devices and virtual
> machines commonly emulate popular gigabit devices.  We wish to
> retain support for popular physical and virtual devices while
> removing support for uncommon ones.  With a few exceptions these
> drivers are unlikely to be used by our user base by the time FreeBSD
> 12 is obsolete (approximately 2024).
>=20
> ## Proposed Solution
>=20
> We propose to deprecate devices which are not sufficiently popular.  This
> will entail:
>  - (October 2018) Send this list to freebsd-net and freebsd-stable.
>  - (Before FreeBSD 12.0-RELEASE - October 2018) Update the manpages and
>    attach routines for each device to be removed and merge those changes
>    to FreeBSD 12.
>  - (One month after FreeBSD 12.0-RELEASE - January 2018) Remind
>    freebsd-net and freebsd-stable users of pending deletion.
>  - (Two months after FreeBSD 12.0-RELEASE - February 2019) Delete depreca=
ted
>    devices.
>=20
> Through out this process, solicit feedback on additions to the exception
> list and update this document as required.  For a device to be placed on
> the exception list the device must meet one of the following criteria:
>  - Popular in applications where it is likely to be deployed beyond the
>    support lifetime of FreeBSD 12 (late 2023).
>    - 5 reports of uses in the wild on machines running FreeBSD 12 will be
>      deemed satisfy the "popular"
>      requirement.
>  - Required to make a well supported embedded or emulation platform usabl=
e.
>  - Ported to use iflib (reducing future maintenance cost.)
>=20
> ### Exceptions to removal
>=20
> Device | Reason
> -------|-------------------------------------------------
> ffec   | Onboard Ethernet for Vybrid arm7 boards
> fxp    | Popular device long recommended by the project.
> dc     | Popular device for CardBus card.
> hme    | Built in interface on many supported sparc64 platforms.
> le     | Emulated by QEMU, alternatives don't yet work for mips64.
> sis    | Soekris Engineering net45xx, net48xx, lan1621, and lan1641.
> vr     | Soekris Engineering net5501, some Asus motherboards.
> xl     | Popular device for CardBus card.
>=20
> Note: USB devices have been excluded from consideration in this round.
>=20
> ### Device to be removed
>=20
> ae, bfe, bm, cs, dme, ed, ep, ex, fe, pcn, rl, sf, smc, sn,
> ste, tl, tx, txp, vx, wb, xe
>=20
> ## Final Disposition
>=20
> TBD



--VdOwlNaOFKGAtAAV
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEcBAEBAgAGBQJbtj5BAAoJEKzQXbSebgfAC4wH/203c8m6mZBpqfAuCctlsUsm
nJEuJNu9hHYRFe/GZOo5G6l7utCXqgggirIIehYSVP8MoDMBdjFCOKMWhRnqfNgc
vZkOEJ04F56y2C1cMWwzBbSkp7omSIoAuIjq2NKZmi0tyY37UKjlvpHUP2LdS0lr
eMbug1tgOhXRDGem5+J6hZ/C61F9n9/6l3wdbHGDTGfuR3LdzYVH0M6H3d16OBKW
PSNNPnBdK3p8B7HJb6YTryvVJXMajtqg10tvFEWAElLuOc4tieQXfcWH0oSISLZ9
S0kjPyd5exmoosuOxWruuGS3WOEH+0o4TtSys70VyQxRH34h0oGpjCLXedP0ky8=
=bJ8N
-----END PGP SIGNATURE-----

--VdOwlNaOFKGAtAAV--



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