From mboxrd@z Thu Jan 1 00:00:00 1970 From: Adolf Belka To: development@lists.ipfire.org Subject: Re: The unshared changes give a problem with build after doing git pull on next Date: Thu, 08 Aug 2024 20:25:47 +0200 Message-ID: In-Reply-To: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============7229584985362465416==" List-Id: --===============7229584985362465416== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Hi Michael, I had to run a find-dependencies command with make.sh and it failed because i= t is looking for build and not build_x86_64 in my system. I have worked around it by changing build to build_x86_64 in the find-depende= ncies command as a temporary workaround. Regards, Adolf. On 08/08/2024 14:09, Adolf Belka wrote: > Hi Michael, > > Is the update part of the unshared changes now resolved and working or shou= ld I still not try it out? > > Regards, > > Adolf. > > On 06/08/2024 17:40, Michael Tremer wrote: >> Hello, >> >> We should not touch the mount propagation of the host=E2=80=99s namespace. >> >> Instead, we should create our own mount namespace and that should be priva= te. >> >> You can however try to see what happens when you add =E2=80=94-propagation= =3Dslave to the first unshare command. >> >> I just installed the plain Ubuntu Server, installed git, checkout out the = repository, downloaded the toolchain and ran the build. >> >> -Michael >> >>> On 3 Aug 2024, at 12:22, Matthias Fischer = wrote: >>> >>> On 03.08.2024 10:54, Michael Tremer wrote: >>>> Hello Matthias, >>> Hi Michael, >>> >>> just looked through https://man7.org/linux/man-pages/man1/unshare.1.html >>> and ran 'findmnt -o+PROPAGATION' (see attachment). >>> >>> I don't know if this could help but does this differ from your test >>> installation? >>> >>> Best >>> Matthias >>> >>>>> On 3 Aug 2024, at 08:47, Matthias Fischer wrote: >>>>> >>>>> Hi Michael, >>>>> >>>>> [shortened some stuff] >>>>> >>>>> ... >>>>> >>>>>>>>> Being curious I tried to build 'next', but I always get the same er= ror: >>>>>>>>> >>>>>>>>> ***SNIP*** >>>>>>>>> root(a)Devel64-1: /git/ipfire-2.x # ./make.sh build >>>>>>>>> Packaged toolchain compilation >>>>>>>>> Building IPFire >>>>>>>>> stage2 >>>>>>>>> Jul 26 13:32:59: Building stage2 unshare: cannot change >>>>>>>>> /git/ipfire-2.x/build_x86_64/proc filesystem propagation: Invalid a= rgument >>>>>>>> ... >>>>>> It looks like you can simply update the kernel staying on the same rel= ease: >>>>>> >>>>>> https://ubuntu.com/security/livepatch/docs/livepatch/reference/kernels >>>>>> >>>>>> For 22.04 LTS, there is a Linux 6.8 image available. >>>>>> >>>>>> Could you check that and confirm that it fixes the mount propagation p= roblem? >>>>> Done. >>>>> >>>>> Current state is as follows: >>>>> >>>>> ***SNIP*** >>>>> ... >>>>> root(a)Devel64-1: /git/ipfire-2.x # lsb_release -a >>>>> No LSB modules are available. >>>>> Distributor ID: Ubuntu >>>>> Description:=C2=A0=C2=A0=C2=A0 Ubuntu 22.04.4 LTS >>>>> Release:=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 22.04 >>>>> Codename:=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 jammy >>>>> ... >>>>> root(a)Devel64-1: /git/ipfire-2.x # uname -mrs >>>>> Linux 6.8.0-39-generic x86_64 >>>>> ... >>>>> ***SNAP*** >>>>> >>>>> But when I try to build 'next' I get exactly the same error as >>>>> before: >>>>> >>>>> ***SNIP*** >>>>> root(a)Devel64-1: /git/ipfire-2.x # ./make.sh build >>>>> Packaged toolchain compilation >>>>> Building IPFire >>>>> stage2 >>>>> =C2=A0=C2=A0 Aug=C2=A0 2 21:21:15: Building stage2 unshare: cannot chan= ge >>>>> /git/ipfire-2.x/build_x86_64/proc filesystem propagation: Invalid argum= ent >>>> Ah, this is good information. So it is not the kernel, it rather is Ubun= tu handling something differently. >>>> >>>> I will have a look at this and get back to you. >>>> >>>>> ERROR: Downloading stage2 >>>>> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 [ FAIL ] >>>>> =C2=A0=C2=A0 Check /git/ipfire-2.x/log_x86_64/_build.ipfire.log for err= ors if >>>>> applicable=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 [ FAIL ] >>>>> ***SNAP*** >>>>> >>>>> Being curious, I commented line line 633 in 'make.sh' >>>>> ("--mount-proc=3D${BUILD_DIR}/proc") =3D> Building starts but fails dur= ing >>>>> 'glib 2.77.0': >>>>> >>>>> ***SNIP*** >>>>> ... >>>>> glib (2.77.0) >>>>> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 [=C2=A0=C2=A0=C2=A0=C2=A0 1:14 ][0/1011] >>>>> >>>>> =C2=A0=C2=A0 [951/1374] Compiling C object gio/gio.p/gio-tool-tree.c.o >>>>> =C2=A0=C2=A0 [952/1374] Linking target gio/gio >>>>> =C2=A0=C2=A0 [953/1374] Compiling C object >>>>> gio/gio-querymodules.p/gio-querymodules.c.o >>>>> =C2=A0=C2=A0 [954/1374] Linking target gio/gio-querymodules >>>>> =C2=A0=C2=A0 [955/1374] Compiling C object gio/gresource.p/gresource-to= ol.c.o >>>>> =C2=A0=C2=A0 [956/1374] Compiling C object >>>>> gio/glib-compile-schemas.p/.._subprojects_gvdb_gvdb_gvdb-reader.c.o >>>>> =C2=A0=C2=A0 [957/1374] Linking target gio/gresource >>>>> =C2=A0=C2=A0 [958/1374] Compiling C object >>>>> gio/glib-compile-schemas.p/.._subprojects_gvdb_gvdb_gvdb-builder.c.o >>>>> =C2=A0=C2=A0 [959/1374] Compiling C object >>>>> gio/glib-compile-resources.p/.._subprojects_gvdb_gvdb_gvdb-reader.c.o >>>>> =C2=A0=C2=A0 [960/1374] Compiling C object >>>>> gio/glib-compile-resources.p/.._subprojects_gvdb_gvdb_gvdb-builder.c.o >>>>> =C2=A0=C2=A0 [961/1374] Compiling C object >>>>> gio/glib-compile-resources.p/glib-compile-resources.c.o >>>>> =C2=A0=C2=A0 [962/1374] Linking target gio/glib-compile-resources >>>>> =C2=A0=C2=A0 [963/1374] Compiling C object >>>>> gio/tests/modules/libtestmodulea.so.p/test-module-a.c.o >>>>> =C2=A0=C2=A0 [964/1374] Compiling C object gio/gapplication.p/gapplicat= ion-tool.c.o >>>>> =C2=A0=C2=A0 [965/1374] Compiling C object gio/gsettings.p/gsettings-to= ol.c.o >>>>> =C2=A0=C2=A0 [966/1374] Linking target gio/tests/modules/libtestmodulea= .so >>>>> =C2=A0=C2=A0 [967/1374] Generating gio/tests/plugin-resources.c with a = custom command >>>>> =C2=A0=C2=A0 FAILED: gio/tests/plugin-resources.c >>>>> /usr/src/glib-2.77.0/builddir/gio/glib-compile-resources >>>>> --compiler=3Dgcc --target=3Dgio/tests/plugin-resources.c --sour >>>>> cedir=3D/usr/src/glib-2.77.0/gio/tests --internal --generate-source >>>>> --c-name _g_plugin ../gio/tests/test4.gresource.xml >>>>> /usr/src/glib-2.77.0/builddir/gio/glib-compile-resources: error >>>>> while loading shared libraries: libgio-2.0.so.0: can >>>>> not open shared object file: No such file or directory >>>>> =C2=A0=C2=A0 [968/1374] Linking target gio/gapplication >>>>> =C2=A0=C2=A0 [969/1374] Compiling C object >>>>> gio/glib-compile-schemas.p/glib-compile-schemas.c.o >>>>> =C2=A0=C2=A0 [970/1374] Linking target gio/gsettings >>>>> =C2=A0=C2=A0 [971/1374] Compiling C object >>>>> gio/tests/modules/libtestmoduleb.so.p/test-module-b.c.o >>>>> =C2=A0=C2=A0 [972/1374] Compiling C object >>>>> gio/tests/gdbus-overflow.p/gdbus-overflow.c.o >>>>> =C2=A0=C2=A0 [973/1374] Compiling C object gio/gdbus.p/gdbus-tool.c.o >>>>> =C2=A0=C2=A0 [974/1374] Compiling C object >>>>> gio/tests/gdbus-object-manager-example/libgdbus-example-objectmanager.s= o.p/meson-gener >>>>> ated_.._objectmanager-gen.c.o >>>>> =C2=A0=C2=A0 ninja: build stopped: subcommand failed. >>>>> =C2=A0=C2=A0 make: *** [glib:75: /usr/src/log/glib-2.77.0] Error 1 >>>>> =C2=A0=C2=A0 make: Leaving directory '/usr/src/lfs' >>>>> >>>>> ERROR: Building glib >>>>> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 [ FAIL ] >>>>> =C2=A0=C2=A0 Check /git/ipfire-2.x/log_x86_64/_build.ipfire.log for err= ors if >>>>> applicable=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 [ FAIL ] >>>>> ***SNAP*** >>>>> >>>>> Best >>>>> Matthias >>>> --===============7229584985362465416==--