Date: Thu, 18 Jan 2024 15:06:08 -0700 From: Warner Losh <imp@bsdimp.com> To: Mario Marietto <marietto2008@gmail.com> Cc: David Chisnall <theraven@freebsd.org>, Mark Millard <marklmi@yahoo.com>, John F Carr <jfc@mit.edu>, freebsd-arm <freebsd-arm@freebsd.org>, freebsd-hackers <freebsd-hackers@freebsd.org>, FreeBSD Mailing List <freebsd-questions@freebsd.org>, "freebsd-xen@freebsd.org" <freebsd-xen@freebsd.org>, FreeBSD Current <freebsd-current@freebsd.org>, =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= <royger@freebsd.org> Subject: Re: How to upgrade an EOL FreeBSD release or how to make it working again Message-ID: <CANCZdfqQfivfLiTO9dwgcygbq3AUhYFfu-E6VgPqyaFigEzxsw@mail.gmail.com> In-Reply-To: <CA%2B1FSih9Du6b3xdDhXXdQfqtT53-HqUU1%2BihB9xYs9d%2BCX78iw@mail.gmail.com> References: <CA%2B1FSihU4WJWbbD9k9th4GXvyAKTL3URic-BAFUY7Og=wLn27A@mail.gmail.com> <CA390EE5-3339-4A15-8087-C28B309FA523@mit.edu> <CA%2B1FSih6j0QP9nKkxFCjMCeuMdvJca3WxVsi8%2BQaN2sV8YO-zw@mail.gmail.com> <D435604C-70F1-454D-B3AE-CD4D7C99D383@FreeBSD.org> <CA%2B1FSijqbF9CNw_oAHAEbLqb02Hq5L79WJV=RDfrtGgqgMp1%2Bg@mail.gmail.com> <CA%2B1FSih9Du6b3xdDhXXdQfqtT53-HqUU1%2BihB9xYs9d%2BCX78iw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--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 <marietto2008@gmail.= com> 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 <marietto2008@gmai= l.com> > 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 <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. 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 <div dir=3D"ltr"><div dir=3D"ltr"><br></div><br><div class=3D"gmail_quote">= <div dir=3D"ltr" class=3D"gmail_attr">On Wed, Jan 17, 2024 at 3:54=E2=80=AF= PM Mario Marietto <<a href=3D"mailto:marietto2008@gmail.com">marietto200= 8@gmail.com</a>> wrote:<br></div><blockquote class=3D"gmail_quote" style= =3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding= -left:1ex"><div dir=3D"ltr"><div><div dir=3D"ltr"><pre dir=3D"ltr"><code>He= llo to everyone.<br><br>I'm trying to copy the Chromebook's SNOW so= urce files that have been included on the FreeBSD 11 <br>revision 269385 to= the new FreeBSD 13 revision 373300. It has compiled correctly world,but wh= en it<br>starts to compile the kernel,it gives a lot of "unknown optio= n" errors. Is there a way to fix them ? <br><br></code></pre><pre><cod= e># svn co <a href=3D"http://svn.freebsd.org/base/head@269385" target=3D"_b= lank">http://svn.freebsd.org/base/head@269385</a> ./head-269385 ; taken fro= m this tutorial :<br><br></code><a href=3D"https://wiki.freebsd.org/arm/Chr= omebook" target=3D"_blank">https://wiki.freebsd.org/arm/Chromebook</a><br><= code> # svn co <a href=3D"http://svn.freebsd.org/base/head" target=3D"_blank">htt= p://svn.freebsd.org/base/head</a> ./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<br><br>I tried also with : </code><code>make TARGET_ARCH=3Darmv6 KERNCONF= =3DCHROMEBOOK-SNOW buildworld buildkernel</code><code>,but it <br>didn'= t make any difference. <br></code></pre><pre><code>..... ..... -------------------------------------------------------------- >>> 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. </code><br> ./head-373300/sys/arm/conf/CHROMEBOOK-SNOW: unknown option "IPI_IRQ_EN= D" / "IPI_IRQ_START / ARM_L2_PIPT"<br></pre><pre>and so on..= .<br><br></pre><pre>these options are included inside the file "std.ex= ynos5250" (that I have copied from the old to the new<br></pre><pre>so= urce code). What I'm trying to do to stop these error is to comment the= offending lines :<br></pre><pre><br>nano ./head-373300/sys/arm/samsung/exy= nos/std.exynos5250 :<br> #options IPI_IRQ_START=3D0<br>#options IPI_IRQ_END=3D15<br></pre></di= v></div></div></blockquote><div><br></div><div>These likely require changes= to adopt exynos to INTRNG.</div><div>=C2=A0</div><blockquote class=3D"gmai= l_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,20= 4,204);padding-left:1ex"><div dir=3D"ltr"><div><div dir=3D"ltr"><pre>#optio= ns ARM_L2_PIPT</pre></div></div></div></blockquote><div>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.</div><div><br></div><div>=C2=A0</div><blockq= uote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1p= x solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div>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. ...</div></div></= blockquote><div><br></div><div>There's likely a lot of work here...</di= v><div><br></div><div>Warner</div><div>=C2=A0</div><blockquote class=3D"gma= il_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,2= 04,204);padding-left:1ex"><br><div class=3D"gmail_quote"><div dir=3D"ltr" c= lass=3D"gmail_attr">On Mon, Jan 15, 2024 at 7:48=E2=80=AFPM Mario Marietto = <<a href=3D"mailto:marietto2008@gmail.com" target=3D"_blank">marietto200= 8@gmail.com</a>> wrote:<br></div><blockquote class=3D"gmail_quote" style= =3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding= -left:1ex"><div dir=3D"ltr"><div>Hello.</div><div><br></div><div>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. <br></div></= div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On= Mon, Jan 15, 2024 at 7:15=E2=80=AFPM David Chisnall <<a href=3D"mailto:= theraven@freebsd.org" target=3D"_blank">theraven@freebsd.org</a>> wrote:= <br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8= ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 15 Jan 2024,= at 16:46, Mario Marietto <<a href=3D"mailto:marietto2008@gmail.com" tar= get=3D"_blank">marietto2008@gmail.com</a>> wrote:<br> > <br> > The ARM Chromebook is based on armv7,it is still recent.<br> <br> 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.<br> <br> > 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.= <br> <br> 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?'= ;<br> <br> > 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.<br> <br> If you want to use an old and unsupported version of FreeBSD, no one is sto= pping you, but:<br> <br> =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.<br> <br> =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 <br> <br> 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.<br> <br> 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.= <br> <br> 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.<br> <br> 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.<br> <br> David<br> <br> </blockquote></div><br clear=3D"all"><br><span class=3D"gmail_signature_pre= fix">-- </span><br><div dir=3D"ltr" class=3D"gmail_signature">Mario.<br></d= iv> </blockquote></div><br clear=3D"all"><br><span class=3D"gmail_signature_pre= fix">-- </span><br><div dir=3D"ltr" class=3D"gmail_signature">Mario.<br></d= iv> </blockquote></div></div> --000000000000bd9405060f3f9248--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfqQfivfLiTO9dwgcygbq3AUhYFfu-E6VgPqyaFigEzxsw>