Date: Sat, 4 Oct 2025 09:06:45 -0500 From: Kyle Evans <kevans@FreeBSD.org> To: Mark Johnston <markj@freebsd.org> Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 1953a12ee2cd - main - flua: support our flua modules in the bootstrap flua Message-ID: <6d10bcbc-38c9-4424-bc4e-55490c9d646b@FreeBSD.org> In-Reply-To: <aOEWQ0lTOjYn4Mn6@nuc> References: <202510031810.593IAZE9008541@gitrepo.freebsd.org> <aOBCo2tQDevULzkY@nuc> <27098bd2-04e8-4ef7-8b8e-f7b170eb8151@FreeBSD.org> <aOBSJpmrrJuDe7vx@nuc> <dd1b5658-fe1c-4893-9935-3dfd587c4723@FreeBSD.org> <aOEWQ0lTOjYn4Mn6@nuc>
next in thread | previous in thread | raw e-mail | index | archive | help
On 10/4/25 07:42, Mark Johnston wrote: > On Fri, Oct 03, 2025 at 07:57:31PM -0500, Kyle Evans wrote: >> On 10/3/25 17:45, Mark Johnston wrote: >>> On Fri, Oct 03, 2025 at 04:44:38PM -0500, Kyle Evans wrote: >>>> On 10/3/25 16:39, Mark Johnston wrote: >>>>> On Fri, Oct 03, 2025 at 06:10:35PM +0000, Kyle Evans wrote: >>>>>> The branch main has been updated by kevans: >>>>>> >>>>>> URL: https://cgit.FreeBSD.org/src/commit/?id=1953a12ee2cde1afacb3e3f7612d89695c96e04f >>>>>> >>>>>> commit 1953a12ee2cde1afacb3e3f7612d89695c96e04f >>>>>> Author: Kyle Evans <kevans@FreeBSD.org> >>>>>> AuthorDate: 2025-10-03 18:09:03 +0000 >>>>>> Commit: Kyle Evans <kevans@FreeBSD.org> >>>>>> CommitDate: 2025-10-03 18:09:14 +0000 >>>>>> >>>>>> flua: support our flua modules in the bootstrap flua >>>>>> This version builds every module into the flua binary itself, since all >>>>>> of the bootstrap tools are built -DNO_SHARED. As a result, we also >>>>>> cannot dlsym(), so we can't really discover the names of our newly >>>>>> builtin modules. Instead, just build out a linker set with all of our >>>>>> luaopen_*() functions to register everything up-front. >>>>>> Building in all of the modules isn't strictly necessary, but it means >>>>>> that we have an example of how to add a bootstrap module everywhere you >>>>>> go and one doesn't need to consider whether bootstrap flua can use a >>>>>> module when writing scripts. On my build machine, the consequence on >>>>>> our binary size is an increase from around 1.6M -> 1.9M, which isn't >>>>>> really that bad. >>>>>> .lua modules can install into their usual path below $WORLDTMP/legacy >>>>>> and we'll pick them up automagically by way of the ctor that sets up >>>>>> LUA_PATH early on. >>>>>> Reviewed by: bapt, emaste >>>>>> Differential Revision: https://reviews.freebsd.org/D51890 >>>>> >>>>> This breaks cross-building from other OSes since linker.h and kenv.h >>>>> aren't available. I guess we can safely exclude those from the >>>>> bootstrap build? It could be done conditionally on ${.MAKE.OS} perhaps, >>>>> but it's probably better to be consistent. >>>> >>>> Hi, >>>> >>>> Hmm, yes- I think excluding libfreebsd and libjail doesn't make it much more >>>> difficult to reason about what's available in the bootstrap flua. >>>> >>>> re: cross-builds, yikes- I forgot that we'll end up bootstrapping flua there. I >>>> bet it's also broken without libyaml and libucl here: https://reviews.freebsd.org/D52894? >>> >>> I don't see any bootstrap build failures in an Ubuntu chroot after I >>> disable building libfreebsd. Let me know if you'd like me to submit a >>> patch for that. >> >> I backed all of it out for the time being, because testing with the github jobs pointed out >> something funky[0] with the <sys/linker_set.h> for mach-o, and I don't want to stand in the >> way of breaking cross-builds for this at the moment. > > Thanks! On the latest main I do see some test failures from nuageinit, > which I presume are fallout from the changes. For instance: > Hi, I moved lposix back into flua for now; I forgot / failed to notice that the require model for lposix was a lot more complicated. The other two builtins are more trivial, so I left those out and just fixed the one place I found (in nuageinit) where we accidentally referenced them without an appropriate require(). Some of the nuageinit network tests fail locally, but seems unrelated as they're dumping out some of my host configuration: ===> nuageinit:config2_network_static_v4 Result: failed: atf-check failed; see the output of the test for details Start time: 2025-10-04T14:05:37.210330Z End time: 2025-10-04T14:05:37.528481Z Duration: 0.318s [...] Standard output: Executing command [ /usr/libexec/nuageinit /tmp/kyua.Vhgb9a/25/work/media/nuageinit nocloud ] Executing command [ cat /tmp/kyua.Vhgb9a/25/work/etc/rc.conf.d/network ] Standard error: Fail: stdout does not match golden output --- network 2025-10-04 14:05:39.331660000 +0000 +++ /tmp/kyua.Vhgb9a/25/work/check.MPF2Ag/stdout 2025-10-04 14:05:39.355412000 +0000 @@ -1,4 +1,4 @@ -ifconfig_ue0="inet 192.0.2.2/24" -ifconfig_ue0_ipv6="inet6 2001:db8::2/64" -ipv6_network_interfaces="ue0" -ipv6_default_interface="ue0" +ifconfig_bridge0="inet 192.0.2.2/24" +ifconfig_bridge0_ipv6="inet6 2001:db8::2/64" +ipv6_network_interfaces="bridge0" +ipv6_default_interface="bridge0" Files left in work directory after failure: etc, home, media, network, routing, var ===> Failed tests nuageinit:config2_network -> failed: atf-check failed; see the output of the test for details [0.317s] nuageinit:config2_network_static_v4 -> failed: atf-check failed; see the output of the test for details [0.318s] nuageinit:nocloud_network -> failed: atf-check failed; see the output of the test for details [0.336s]
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6d10bcbc-38c9-4424-bc4e-55490c9d646b>