From nobody Thu Jan 18 22:06:08 2024 X-Original-To: freebsd-arm@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TGGzf03Yrz576Pv for ; Thu, 18 Jan 2024 22:06:22 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-lj1-x233.google.com (mail-lj1-x233.google.com [IPv6:2a00:1450:4864:20::233]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TGGzd4bb2z4s8W for ; Thu, 18 Jan 2024 22:06:21 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-lj1-x233.google.com with SMTP id 38308e7fff4ca-2cd928a1d58so1235681fa.3 for ; Thu, 18 Jan 2024 14:06:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1705615579; x=1706220379; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=pXJ3dY6ZLqDhoUqyMmMZkZGPT7oc5+Tg3yKVUZN1kPM=; b=D/UQQO/R3zw+K5fenXpZ8BXbIrqBgMqKtg4TymTJYznqY1k/9i9lREZVwKo8lWIrAo OKQMMGMasC7ugWHdTSQ6rysA2ZH+xjMZgy2gmF7u3WK9RQbBMmhFGM4u7sLTx8HMDMfG c4RLBbY8Bacdf+RvR2xqe9MFuNNHRj+bOzrXoa9RIBxmDf7I8Zj4UbUscFbhYt49sAO8 Yuvgr5+gD0DN/PcxFtBxm14taJ01s3mQyOCpqCJ52jpqYgqvCpP5xzSwTe+baToRpZrh EoZJtYRGPZtxebca9uhWy0hOMnIYACQZ2i+K2QXe16hAv1q8+r8pnqMSK4WBpf8ogmaa kf+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1705615579; x=1706220379; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=pXJ3dY6ZLqDhoUqyMmMZkZGPT7oc5+Tg3yKVUZN1kPM=; b=ulGQCmexv+RLBdKQnoQF6cve2uAQk5VGTbzc8PNRg1Va+TYgU5nVuckA3/o0b6BjZY 4zCmnQTO1r7MYCaL/rp351+hQ3WSaiHTseekk/HEHspOwdeUuKV3Tc5h8Gz9+UZBJPLq NjPm8mWbIvHHcuh4vCYmmLUUajLXrFf3AcQNnQg8CaZY++TVWIG3e3Ck8P0w4mTBHEgf csg3BVQywH34ttQBvJ/n4kToZQ7uZk4+f3U5YbN0orG+IS8mdMHLjZmY8AqeLonyDaAX Wx9ob7DXicdRwW2B7yLIO03eFfNrP4MlL70up+QTe/nOgyACQwYJPuyYDlEschf2Tbzq LpGA== X-Gm-Message-State: AOJu0Yw0kOk0Eemdoqe8aHxHTk9ibCMj0ABndW5JZNsOOze47BCYJR8u FHY2V2s8LjF/TlMQ+Qq7vTu4SkKG88DWE4EcyCS27JGQjh1hhGS/IAjJXyYLT24A/SxpBoiLsmv nB/YmYgXCucuGD9yqrGJZjXyDo5XPsPHfpjz+6A== X-Google-Smtp-Source: AGHT+IGZcP6eNjR4bYou33Z5k3wz16Xq6dT8rIoYRDvJxfn+9uAvnfuFOX7Y/TfI0aVtbEHsuez2NOoGmdvzjJzP+ZM= X-Received: by 2002:a2e:9c19:0:b0:2cd:f341:5150 with SMTP id s25-20020a2e9c19000000b002cdf3415150mr971764lji.13.1705615579512; Thu, 18 Jan 2024 14:06:19 -0800 (PST) List-Id: Porting FreeBSD to ARM processors List-Archive: https://lists.freebsd.org/archives/freebsd-arm List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arm@freebsd.org MIME-Version: 1.0 References: In-Reply-To: From: Warner Losh Date: Thu, 18 Jan 2024 15:06:08 -0700 Message-ID: Subject: Re: How to upgrade an EOL FreeBSD release or how to make it working again To: Mario Marietto Cc: David Chisnall , Mark Millard , John F Carr , freebsd-arm , freebsd-hackers , FreeBSD Mailing List , "freebsd-xen@freebsd.org" , FreeBSD Current , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= Content-Type: multipart/alternative; boundary="000000000000bd9405060f3f9248" X-Rspamd-Queue-Id: 4TGGzd4bb2z4s8W X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US] --000000000000bd9405060f3f9248 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Jan 17, 2024 at 3:54=E2=80=AFPM Mario Marietto wrote: > Hello to everyone. > > I'm trying to copy the Chromebook's SNOW source files that have been incl= uded on the FreeBSD 11 > revision 269385 to the new FreeBSD 13 revision 373300. It has compiled co= rrectly world,but when it > starts to compile the kernel,it gives a lot of "unknown option" errors. I= s there a way to fix them ? > > # svn co http://svn.freebsd.org/base/head@269385 ./head-269385 ; taken fr= om this tutorial : > > https://wiki.freebsd.org/arm/Chromebook > > # svn co http://svn.freebsd.org/base/head ./head-373300 > # cp ./head-269395/sys/arm/conf/CHROMEBOOK-SNOW ./head-373300/sys/arm/con= f > # cd ./head-373300 > # make TARGET_ARCH=3Darmv7 KERNCONF=3DCHROMEBOOK-SNOW buildworld buildker= nel > > I tried also with : make TARGET_ARCH=3Darmv6 KERNCONF=3DCHROMEBOOK-SNOW b= uildworld buildkernel,but it > didn't make any difference. > > ..... > ..... > -------------------------------------------------------------- > >>> World build completed on Wed Jan 17 21:27:04 CET 2024 > >>> World built in 14203 seconds, ncpu: 16 > -------------------------------------------------------------- > make[1]: "/mnt/zroot2/zroot2/OS/Chromebook/head-373300/Makefile.inc1" lin= e 341: SYSTEM_COMPILER: lib > clang will be built for bootstrapping a cross-compiler. > make[1]: "/mnt/zroot2/zroot2/OS/Chromebook/head-373300/Makefile.inc1" lin= e 346: SYSTEM_LINKER: libcl > ang will be built for bootstrapping a cross-linker. > > -------------------------------------------------------------- > >>> Kernel build for CHROMEBOOK-SNOW started on Wed Jan 17 21:27:04 CET 2= 024 > -------------------------------------------------------------- > =3D=3D=3D> CHROMEBOOK-SNOW > mkdir -p /usr/obj/mnt/zroot2/zroot2/OS/Chromebook/head-373300/arm.armv7/s= ys > > -------------------------------------------------------------- > >>> stage 1: configuring the kernel > -------------------------------------------------------------- > cd /mnt/zroot2/zroot2/OS/Chromebook/head-373300/sys/arm/conf; PATH=3D/us= r/obj/mnt/zroot2/zroot2/OS/Ch > romebook/head-373300/arm.armv7/tmp/bin:/usr/obj/mnt/zroot2/zroot2/OS/Chro= mebook/head-373300/arm.armv > 7/tmp/usr/sbin:/usr/obj/mnt/zroot2/zroot2/OS/Chromebook/head-373300/arm.a= rmv7/tmp/usr/bin:/usr/obj/m > nt/zroot2/zroot2/OS/Chromebook/head-373300/arm.armv7/tmp/legacy/usr/sbin:= /usr/obj/mnt/zroot2/zroot2/ > OS/Chromebook/head-373300/arm.armv7/tmp/legacy/usr/bin:/usr/obj/mnt/zroot= 2/zroot2/OS/Chromebook/head > -373300/arm.armv7/tmp/legacy/bin:/usr/obj/mnt/zroot2/zroot2/OS/Chromebook= /head-373300/arm.armv7/tmp/ > legacy/usr/libexec::/sbin:/bin:/usr/sbin:/usr/bin config -d /usr/obj/mn= t/zroot2/zroot2/OS/Chromebo > ok/head-373300/arm.armv7/sys/CHROMEBOOK-SNOW -I '/mnt/zroot2/zroot2/OS/C= hromebook/head-373300/sys/a > rm/conf' -I '/mnt/zroot2/zroot2/OS/Chromebook/head-373300/sys/arm/conf' = '/mnt/zroot2/zroot2/OS/Chro > mebook/head-373300/sys/arm/conf/CHROMEBOOK-SNOW' > WARNING: duplicate option `DEBUG' encountered. > > ./head-373300/sys/arm/conf/CHROMEBOOK-SNOW: unknown option "IPI_IRQ_END" = / "IPI_IRQ_START / ARM_L2_PIPT" > > and so on... > > these options are included inside the file "std.exynos5250" (that I have = copied from the old to the new > > source code). What I'm trying to do to stop these error is to comment the= offending lines : > > > nano ./head-373300/sys/arm/samsung/exynos/std.exynos5250 : > > #options IPI_IRQ_START=3D0 > #options IPI_IRQ_END=3D15 > > These likely require changes to adopt exynos to INTRNG. > #options ARM_L2_PIPT > > This is likely a nop. It was for ARMv4/5 only and google tells me exynos5250 was a dual core Cortex A-15, which is armv7. > but I suspect that a lot of options will be missing and the more comments > I will make,the more the chance that it will not work will increase. ... > There's likely a lot of work here... Warner > > On Mon, Jan 15, 2024 at 7:48=E2=80=AFPM Mario Marietto > wrote: > >> Hello. >> >> Do you have deleted forever the set of packages and ports for FreeBSD 11 >> or you keep them stored in DVDs that I can buy or download for a small >> amount of money ? If yes,where ? To rebuild everything is out of my >> expertise. >> >> On Mon, Jan 15, 2024 at 7:15=E2=80=AFPM David Chisnall >> wrote: >> >>> On 15 Jan 2024, at 16:46, Mario Marietto wrote= : >>> > >>> > The ARM Chromebook is based on armv7,it is still recent. >>> >>> For reference, the ARMv7 architecture was introduced in 2005. The last >>> cores that implemented the architecture were released in 2014. This is= not >>> a =E2=80=98recent=E2=80=99 architecture, it=E2=80=99s one that=E2=80=99= s 19 years old and has been largely >>> dead for several years. >>> >>> > But let's change perspective for a moment,don't think about the ARM >>> Chromebook. My question is : how to upgrade FreeBSD when it goes EOL. >>> >>> Generally, run `freebsd-update`. This is a very different question fro= m >>> =E2=80=98how do I do a new install of an old an unsupported version?' >>> >>> > I ask this because there is a huge difference here between FreeBSD an= d >>> Linux. Today if you need to use , for example Ubuntu 14.0, you can use = it >>> as is. Yes,there will be a lot of bugs,but it will work without crashes= . >>> But if you want to use an old FreeBSD system,nothing will work for you. >>> So,do you know some methods to install even packages or ports ? You >>> know,there are cases when you need to do some experiments so that you c= an >>> keep your machine off the internet,so you aren't scared that someone ca= n >>> compromise it. Totally prohibiting the users to use an old system,remov= ing >>> ports and packages is not a choice that I approve of. And I'm not the o= nly >>> one that thinks like this. >>> >>> If you want to use an old and unsupported version of FreeBSD, no one is >>> stopping you, but: >>> >>> - You will need to build the releases. The source code is still in >>> git, you can. The scripts for building the release images are right th= ere >>> in the repo. Just grab the relevant release or releng branch and go. >>> >>> - You will need to build packages. Newer versions of the ports tree >>> will not be tested with the older release, so you may need to use an ol= der >>> checkout of the ports tree. Poudriere will build a package repo for yo= u. >>> >>> In both cases, if you=E2=80=99re using older versions you almost certai= nly >>> *will* have security vulnerabilities. The project strongly advises you= not >>> to do this and not to blame us when you install known-insecure software= and >>> end up compromised. >>> >>> The project does not have enough active contributors to keep maintainin= g >>> things indefinitely. This is why release have a five-year supported >>> lifetime. If you want to pick up an old branch and maintain it, you=E2= =80=99re >>> welcome to. In the past, companies have picked up old branches and >>> maintained them for customers that had a dependency on them. If you wa= nt >>> to pay someone to maintain an old branch (and have deep pockets) then t= here >>> are probably a few companies that will happily take your money. >>> >>> Maintaining binaries is a slightly different issue, but it=E2=80=99s no= t totally >>> unrelated. Keeping old packages around consumes disk space and costs t= he >>> project money (remember, every package is mirrored across the CDN, so t= his >>> isn=E2=80=99t just a single disk). Even if it were free, philosophical= ly, I think >>> making it easy for users to install known-insecure software is a bad id= ea >>> but if you want to keep a package repo with out-of-date packages online >>> indefinitely then you can. You can run Poudriere and even cross-compil= e >>> from a fairly beefy cloud machine quite easily. >>> >>> It=E2=80=99s been a while since I did a full package build, but I would= guess >>> that you could do a single package build (all ports) for about $50 on a >>> cloud VM, more (2-3x) if it=E2=80=99s emulated. Storing the results fo= r a small >>> number of users will cost around $10-20/month. If you think this is an >>> important thing to do, then you are absolutely welcome to spend your ow= n >>> money on doing it. >>> >>> David >>> >>> >> >> -- >> Mario. >> > > > -- > Mario. > --000000000000bd9405060f3f9248 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Wed, Jan 17, 2024 at 3:54=E2=80=AF= PM Mario Marietto <marietto200= 8@gmail.com> wrote:
He=
llo to everyone.

I'm trying to copy the Chromebook's SNOW so= urce files that have been included on the FreeBSD 11
revision 269385 to= the new FreeBSD 13 revision 373300. It has compiled correctly world,but wh= en it
starts to compile the kernel,it gives a lot of "unknown optio= n" errors. Is there a way to fix them ?

# svn co http://svn.freebsd.org/base/head@269385 ./head-269385 ; taken fro=
m this tutorial :

https://wiki.freebsd.org/arm/Chromebook
<= code> # svn co htt= p://svn.freebsd.org/base/head ./head-373300 # cp ./head-269395/sys/arm/conf/CHROMEBOOK-SNOW ./head-373300/sys/arm/conf # cd ./head-373300 # make TARGET_ARCH=3Darmv7 KERNCONF=3DCHROMEBOOK-SNOW buildworld buildkerne= l

I tried also with : make TARGET_ARCH=3Darmv6 KERNCONF= =3DCHROMEBOOK-SNOW buildworld buildkernel,but it
didn'= t make any difference.
.....
.....
--------------------------------------------------------------
>>> World build completed on Wed Jan 17 21:27:04 CET 2024
>>> World built in 14203 seconds, ncpu: 16
--------------------------------------------------------------
make[1]: "/mnt/zroot2/zroot2/OS/Chromebook/head-373300/Makefile.inc1&q=
uot; line 341: SYSTEM_COMPILER: lib
clang will be built for bootstrapping a cross-compiler.
make[1]: "/mnt/zroot2/zroot2/OS/Chromebook/head-373300/Makefile.inc1&q=
uot; line 346: SYSTEM_LINKER: libcl
ang will be built for bootstrapping a cross-linker.

--------------------------------------------------------------
>>> Kernel build for CHROMEBOOK-SNOW started on Wed Jan 17 21:27:0=
4 CET 2024
--------------------------------------------------------------
=3D=3D=3D> CHROMEBOOK-SNOW
mkdir -p /usr/obj/mnt/zroot2/zroot2/OS/Chromebook/head-373300/arm.armv7/sys

--------------------------------------------------------------
>>> stage 1: configuring the kernel
--------------------------------------------------------------
cd /mnt/zroot2/zroot2/OS/Chromebook/head-373300/sys/arm/conf;  PATH=3D/usr/=
obj/mnt/zroot2/zroot2/OS/Ch
romebook/head-373300/arm.armv7/tmp/bin:/usr/obj/mnt/zroot2/zroot2/OS/Chrome=
book/head-373300/arm.armv
7/tmp/usr/sbin:/usr/obj/mnt/zroot2/zroot2/OS/Chromebook/head-373300/arm.arm=
v7/tmp/usr/bin:/usr/obj/m
nt/zroot2/zroot2/OS/Chromebook/head-373300/arm.armv7/tmp/legacy/usr/sbin:/u=
sr/obj/mnt/zroot2/zroot2/
OS/Chromebook/head-373300/arm.armv7/tmp/legacy/usr/bin:/usr/obj/mnt/zroot2/=
zroot2/OS/Chromebook/head
-373300/arm.armv7/tmp/legacy/bin:/usr/obj/mnt/zroot2/zroot2/OS/Chromebook/h=
ead-373300/arm.armv7/tmp/
legacy/usr/libexec::/sbin:/bin:/usr/sbin:/usr/bin  config  -d /usr/obj/mnt/=
zroot2/zroot2/OS/Chromebo
ok/head-373300/arm.armv7/sys/CHROMEBOOK-SNOW  -I '/mnt/zroot2/zroot2/OS=
/Chromebook/head-373300/sys/a
rm/conf' -I '/mnt/zroot2/zroot2/OS/Chromebook/head-373300/sys/arm/c=
onf'  '/mnt/zroot2/zroot2/OS/Chro
mebook/head-373300/sys/arm/conf/CHROMEBOOK-SNOW'
WARNING: duplicate option `DEBUG' encountered.

./head-373300/sys/arm/conf/CHROMEBOOK-SNOW: unknown option "IPI_IRQ_EN= D" / "IPI_IRQ_START / ARM_L2_PIPT"
and so on..=
.

these options are included inside the file "std.ex=
ynos5250" (that I have copied from the old to the new
so=
urce code). What I'm trying to do to stop these error is to comment the=
 offending lines :

nano ./head-373300/sys/arm/samsung/exy= nos/std.exynos5250 :
#options IPI_IRQ_START=3D0
#options IPI_IRQ_END=3D15

These likely require changes= to adopt exynos to INTRNG.
=C2=A0
#optio=
ns    ARM_L2_PIPT
This is likely a= nop. It was for ARMv4/5 only and google tells me exynos5250 was a dual cor= e Cortex A-15, which is armv7.

=C2=A0
but I susp= ect that a lot of options will be missing and the more comments I will make= ,the more the chance that it will not work will increase. ...

There's likely a lot of work here...

Warner
=C2=A0

On Mon, Jan 15, 2024 at 7:48=E2=80=AFPM Mario Marietto = <marietto200= 8@gmail.com> wrote:
Hello.

Do you hav= e deleted forever the set of packages and ports for FreeBSD 11 or you keep = them stored in DVDs that I can buy or download for a small amount of money = ? If yes,where ? To rebuild everything is out of my expertise.

On= Mon, Jan 15, 2024 at 7:15=E2=80=AFPM David Chisnall <theraven@freebsd.org> wrote:=
On 15 Jan 2024,= at 16:46, Mario Marietto <marietto2008@gmail.com> wrote:
>
> The ARM Chromebook is based on armv7,it is still recent.

For reference, the ARMv7 architecture was introduced in 2005.=C2=A0 The las= t cores that implemented the architecture were released in 2014.=C2=A0 This= is not a =E2=80=98recent=E2=80=99 architecture, it=E2=80=99s one that=E2= =80=99s 19 years old and has been largely dead for several years.

> But let's change perspective for a moment,don't think about th= e ARM Chromebook. My question is : how to upgrade FreeBSD when it goes EOL.=

Generally, run `freebsd-update`.=C2=A0 This is a very different question fr= om =E2=80=98how do I do a new install of an old an unsupported version?'= ;

> I ask this because there is a huge difference here between FreeBSD and= Linux. Today if you need to use , for example Ubuntu 14.0, you can use it = as is. Yes,there will be a lot of bugs,but it will work without crashes.=C2= =A0 But if you want to use an old FreeBSD system,nothing will work for you.= So,do you know some methods to install even packages or ports ? You know,t= here are cases when you need to do some experiments so that you can keep yo= ur machine off the internet,so you aren't scared that someone can compr= omise it. Totally prohibiting the users to use an old system,removing ports= and packages is not a choice that I approve of. And I'm not the only o= ne that thinks like this.

If you want to use an old and unsupported version of FreeBSD, no one is sto= pping you, but:

=C2=A0- You will need to build the releases.=C2=A0 The source code is still= in git, you can.=C2=A0 The scripts for building the release images are rig= ht there in the repo.=C2=A0 Just grab the relevant release or releng branch= and go.

=C2=A0- You will need to build packages.=C2=A0 Newer versions of the ports = tree will not be tested with the older release, so you may need to use an o= lder checkout of the ports tree.=C2=A0 Poudriere will build a package repo = for you.=C2=A0

In both cases, if you=E2=80=99re using older versions you almost certainly = *will* have security vulnerabilities.=C2=A0 The project strongly advises yo= u not to do this and not to blame us when you install known-insecure softwa= re and end up compromised.

The project does not have enough active contributors to keep maintaining th= ings indefinitely.=C2=A0 This is why release have a five-year supported lif= etime.=C2=A0 If you want to pick up an old branch and maintain it, you=E2= =80=99re welcome to.=C2=A0 In the past, companies have picked up old branch= es and maintained them for customers that had a dependency on them.=C2=A0 I= f you want to pay someone to maintain an old branch (and have deep pockets)= then there are probably a few companies that will happily take your money.=

Maintaining binaries is a slightly different issue, but it=E2=80=99s not to= tally unrelated.=C2=A0 Keeping old packages around consumes disk space and = costs the project money (remember, every package is mirrored across the CDN= , so this isn=E2=80=99t just a single disk).=C2=A0 Even if it were free, ph= ilosophically, I think making it easy for users to install known-insecure s= oftware is a bad idea but if you want to keep a package repo with out-of-da= te packages online indefinitely then you can.=C2=A0 You can run Poudriere a= nd even cross-compile from a fairly beefy cloud machine quite easily.

It=E2=80=99s been a while since I did a full package build, but I would gue= ss that you could do a single package build (all ports) for about $50 on a = cloud VM, more (2-3x) if it=E2=80=99s emulated.=C2=A0 Storing the results f= or a small number of users will cost around $10-20/month.=C2=A0 If you thin= k this is an important thing to do, then you are absolutely welcome to spen= d your own money on doing it.

David



--
Mario.


--
Mario.
--000000000000bd9405060f3f9248--