Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 20 Mar 2023 20:28:47 +0000
From:      Glen Barber <gjb@freebsd.org>
To:        Warner Losh <imp@bsdimp.com>
Cc:        "freebsd-arm@freebsd.org" <freebsd-arm@freebsd.org>
Subject:   Re: Poudriere friendly armv7 relases
Message-ID:  <20230320202847.GW2347@FreeBSD.org>
In-Reply-To: <CANCZdfo7A6%2BzB%2B=Wx5Y9VYFCsSk=Aa%2B9657FxfG0whM-Wsx1kQ@mail.gmail.com>
References:  <CANCZdfo7A6%2BzB%2B=Wx5Y9VYFCsSk=Aa%2B9657FxfG0whM-Wsx1kQ@mail.gmail.com>

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

--nKvJs6ze6az+4fwY
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Mon, Mar 20, 2023 at 02:06:50PM -0600, Warner Losh wrote:
> Greetings,
>=20
> Since it looks like we're going to retain at least armv7 for FreeBSD 14
> (armv6 has been nominated for deprecation, but if it isn't deprecated, all
> this applies to it).
>=20
> I'd like to start making at least the base.tgz, etc available for armv7.
> This would allow us to create armv7 poduriere jails without building from
> source.
>=20
> Is there some reason we're not doing this today? I know ISOs don't make a
> lot of sense in the arm ecosystem, but having these artifacts would enable
> poudriere binary install support.
>=20
> Comments?
>=20

Several.  :)

I have looked into this in the past, and mhorne@ had even added some
environment knobs to the way armv7 is built, however I later realized
that it was not 1:1 compatible with how base.txz, etc., are generated
for other architectures.

1) For other architectures, base.txz is result of the 'ftp' target in
   /usr/src/release.

2) armv7 does not have an 'ftp' target.  (Well, it does not *disallow*
   it, and probably should at the immediate moment, but it does blow
   up.)

3) Most importantly, and the reason I stopped looking further into this,
   we cannot run native armv7 binaries on an amd64 system (at least,
   last I was aware).  Particularly, we can only actually use what is
   listed in kern.supported_archs, at least without falling back to some
   sort of emulation or wrapper support (such as qemu or the like).

Back when armv6 and armv7 support was added using shell scripts instead
of hooking into release/Makefile, having a base.txz did not make much
sense because there were different environment variables that were
passed into the resulting output, some of which affected the loader
output, etc., specifically with regard to u-boot.  I am not sure if this
is still an issue or a concern, however.

That said, I can take a look and see if we can package base.txz for
armv7, however I would like to do some archaeology work here to be sure
that the resultant output is not going to have unexpected behavior
because of the userland not matching 100% the target SoC.

Glen


--nKvJs6ze6az+4fwY
Content-Type: application/pgp-signature; name="signature.asc"

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

iQIzBAEBCAAdFiEEjRJAPC5sqwhs9k2jAxRYpUeP4pMFAmQYwfoACgkQAxRYpUeP
4pMCAg//TF2TPj6eopV92pUr60s7zVyaFu7Q4uZt2BbiL9n+T8y7N8BHpRFATV6v
IuXc8VkJvxf3OxO7LWT88EYuPiKjCXuyjfAf33YIg4luLooO7pJ9cvPCD0YZulXT
xk5NeN+FUEDQjzUhhf28M8NDo0bhTC4j6xcV2KulwJyMShJH5lapBIsX4jBNEaOW
dcCXwV56d7CFTW8op3oEs3662MLlfME2i5l4WPymPCsOgT4yjcoBeu1Ijm8y5anW
suUEonFd4KH03yCsWiicWAG2dlQYT+jxczjbkxuSHDzcX9oEBTQhoM597BKvj0J1
iNL90Bimn40PYNPzyPL/BvlP+lb+Y5etPGLj/M/cmiD/HYOMKs9TJBSurhgTjopT
lZwCdBSamauZrZEQqRAyIYO4q18K9HVG+YschlwOtbjPYjVqClZWMW144uH2KmUa
cimhr4ZQ1y9OiAAmroUsRedhTy27wyJiLPJaw0ksJlo6gFJKip4WFq3UZaCVs5PC
iwkuRs7k0773sjhqSPdePM4hS7VOb4BFUH7yn5bIEVywWSBipJ5H9vYPZLBQO42f
RECz/Pqw9wxG5IRiKCPeEQu4UaaQODMbAmKhevHRTHXFdelQvUMaor/qxJS/oDyg
AzaOTA7uvG0WipF4P1kmOA8Ct8irj/HzHXmy+D1rSNU6sk1pTWs=
=74uP
-----END PGP SIGNATURE-----

--nKvJs6ze6az+4fwY--



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