Re: Future of 32-bit platforms (including i386)

From: Warner Losh <imp_at_bsdimp.com>
Date: Tue, 25 Jul 2023 05:10:51 UTC
On Mon, Jul 24, 2023 at 2:59 PM Mark Millard <marklmi@yahoo.com> wrote:

> John Baldwin <jhb_at_FreeBSD.org> wrote on
> Date: Mon, 24 Jul 2023 19:33:57 UTC :
>
> > On 5/23/23 4:46 PM, John Baldwin wrote:
> > > On 4/27/23 10:19 AM, John Baldwin wrote:
> > >> For 13.0, i386 was demoted from Tier 1 to Tier 2. In the announcement
> > >> of this for 13.0, the project committed to an update on i386's future
> > >> around the time of 14.0. The announcement at the time suggested that
> > >> i386 would be supported less in 14.x than in 13.x.
> > >>
> > >> My proposal is that for 14.x we treat i386 like any other Tier 2
> > >> platform. That is, release images and packages would only be provided
> > >> on a best-effort basis, and we would not guarantee providing them. I
> > >> think we should also stop shipping binary updates for the base system
> > >> (freebsd-update) for 14.x for i386.
> > >>
> > >> A larger question is what to do about 32-bit platforms moving forward.
> > >> My proposal for powerpc, i386, and armv[67] is that we say publicly
> > >> that we anticipate not supporting them in 15. That is, that we may
> > >> remove them outright from the tree, or we may leave them in the tree,
> > >> but we do not plan on building packages or release images. Another
> > >> option to consider for 32-bit platforms perhaps in 15 is to remove
> > >> kernel support and only retain the ability to build userland. The
> > >> goal of saying this now-ish (or about the time 14.0 is going to ship)
> > >> would be to give time for users and developers to respond in the
> > >> window between 14.0 and 15.0 so we can evaluate those responses as an
> > >> input into the final decision for 15.
> > >
> > > We discussed this topic during the 15.0 developer summit and the
> consensus
> > > among the folks present (which is only a subset of our community), is
> > > that there is still interest in supporting armv7 kernels in 15.0, but
> not
> > > kernels for other platforms. In addition, no one expressed a need for
> > > full 32-bit world support for i386 and powerpc, only for compat32
> support
> > > in the kernel, and lib32 (cc -m32) support in userland.
> > >
> > > One question for this is if we think we will have sufficient developer
> > > resources to maintain armv7 kernels for the life of stable/15. We can
> > > largely punt on the final decision for that until close to the release
> of
> > > 15.0. I think for what we announce for 14.0 we can still say that we
> > > are generally planning to remove 32-bit kernel and world support in
> 15.0,
> > > but may consider keeping armv7.
> >
> > I've posted a couple of reviews to add a WARNING to dmesg during the boot
> > of 32-bit kernels as well as to add a note to RELNOTES to serve as the
> > starting point for the note in the release notes:
> >
> > https://reviews.freebsd.org/D41163
> > https://reviews.freebsd.org/D41164
> >
> > Also, Mike Karels has been working on lib32 support for aarch64 that
> should
> > be included in 14.0.
>
> I see no wording about armv6 being removed earlier.
>
> At one time Warner had written:
>
> >> On Tue, Dec 13, 2022 at 11:48 AM Mark Millard <marklmi@yahoo.com>
> wrote:
> >> FYI: The old 2021-Oct-28 message related to armv6 removal
> >> sequencing/timing has a new follow up finally:
> >>
> >>
> https://lists.freebsd.org/archives/freebsd-arch/2022-December/000313.html
> >>
> >> (Nothing about this changes the armv7 status.)
> >
> > Nope.
> >
> > tl;dr: armv6 packages will stop, we'll stop doing -current armv6
> snapshots, we'll move armv6 to
> > an 'extra' architecture in universe for stable/14. post stable/14 we'll
> tear down support for armv6
> > in base and later in ports. Ports mention armv6 ~500 times, maybe 1/4 of
> them also mention armv7,
> > and the vast majority of them mark things as broken in some way (though
> there are exceptions).
> >
> > Warner
>

I'm still hoping to get to this... I think it's the last time on my 'wanna
get done before 14' checklist. It
is orthogonal to the 32-bit stuff.

Warner