Re: Should changes in src/usr.sbin/bhyve/ trigger an llvm rebuild?
Date: Mon, 29 Jan 2024 01:33:49 UTC
On Sun, Jan 28, 2024 at 05:13:24PM -0800, Mark Millard wrote: > ... > > As it happens, I rather fumble-fingered the (intended) reboot on the 2nd > > laptop (and started another rebuild instead). > > > > And I do these within script(1), as it's handy to have a record. > > > > Note that this differes from the sequence you cite above, in that I > > failed to do the reboot. > > > > So I powered it back up and -- without updating sources (or the local > > repo mirror, for that matter) -- did another rebuild. > > > > I'm having trouble identifying the detailed sequencing > being reported below. > > Doing on one machine: > installworld > buidlworld > buildworld > buildworld > . . > > Will only take large times for the first one > (potentially). I have not done that. > But doing: > installworld > buidlworld > installworld > buildworld > installworld > buildworld > . . > > Can have each buildworld take large times > depending the the details involved. As documented at https://www.catwhisker.org/~david/FreeBSD/upgrade.html, each "build" is (essentially) the set of steps in src/UPDATING under "To rebuild everything and install it on the current system." starting with "make buildworld" up to (and including) "make delete-old" (without the "<reboot in single user>" step). > I need to understand more about what happened > before each buildworld on each machine to know > what sort of timestamp relationships are > involved for files. installworld can > significantly change various timestamp > relationships. I have placed a copy of the complete typescript at https://www.catwhisker.org/~david/FreeBSD/stable_14/build_typescript.txt. > > Here is an extract of some salient lines from the typescript file: > > > > g1-48(14.0-S)[4] egrep ' built in |Installing .* (started|completed)|Removing old libraries| stable/14-n' s1 > > FreeBSD g1-48.catwhisker.org 14.0-STABLE FreeBSD 14.0-STABLE #38 stable/14-n266551-63a7e799b32c: Sat Jan 27 11:40:05 UTC 2024 root@g1-48.catwhisker.org:/common/S1/obj/usr/src/amd64.amd64/sys/CANARY amd64 1400506 1400506 > >>>> World built in 2351 seconds, ncpu: 8, make -j16 > > Was a prior step (ignoring reboots, say) an > installworld of 63a7e799b32c, with no other > buidlworlds after the installworld? Yes; that's how stable/14-n266551-63a7e799b32c came to be the running system. Oh: perhaps of interest: I'm not using boot environments. All of this is with UFS (well, UFS2+soft updates). > (I'm wording for major steps or my description > the possibilities would get rather complicated > and large.) > > >>>> Kernel(s) CANARY built in 898 seconds, ncpu: 8, make -j16 > >>>> Installing kernel CANARY completed on Sun Jan 28 12:25:27 UTC 2024 > >>>> Installing everything started on Sun Jan 28 12:25:57 UTC 2024 > >>>> Installing everything completed on Sun Jan 28 12:28:01 UTC 2024 > > FreeBSD g1-48.catwhisker.org 14.0-STABLE FreeBSD 14.0-STABLE #38 stable/14-n266551-63a7e799b32c: Sat Jan 27 11:40:05 UTC 2024 root@g1-48.catwhisker.org:/common/S1/obj/usr/src/amd64.amd64/sys/CANARY amd64 1400506 1400506 > >>>> World built in 116 seconds, ncpu: 8, make -j16 > > Was a prior step (ignoring reboots, say) an > installworld of 63a7e799b32c, with no other > buidlworlds after the installworld? > > Is the answer different here? No reboots -- as mentioned, I intended to reboot, but instead initiated the build sequence. > >>>> Kernel(s) CANARY built in 920 seconds, ncpu: 8, make -j16 > >>>> Installing kernel CANARY completed on Sun Jan 28 12:47:55 UTC 2024 > >>>> Installing everything started on Sun Jan 28 12:48:25 UTC 2024 > >>>> Installing everything completed on Sun Jan 28 12:50:01 UTC 2024 > > FreeBSD g1-48.catwhisker.org 14.0-STABLE FreeBSD 14.0-STABLE #40 stable/14-n266554-2ee407b6068a: Sun Jan 28 12:39:17 UTC 2024 root@g1-48.catwhisker.org:/common/S1/obj/usr/src/amd64.amd64/sys/CANARY amd64 1400506 1400506 > >>>> Removing old libraries > > FreeBSD g1-48.catwhisker.org 14.0-STABLE FreeBSD 14.0-STABLE #40 stable/14-n266554-2ee407b6068a: Sun Jan 28 12:39:17 UTC 2024 root@g1-48.catwhisker.org:/common/S1/obj/usr/src/amd64.amd64/sys/CANARY amd64 1400506 1400506 > >>>> World built in 124 seconds, ncpu: 8, make -j16 > > Was a prior step (ignoring reboots, say) an > installworld of 63a7e799b32c with no other > buidlworlds after the, installworld? Where you see ">>>> Removing old libraries", there was a reboot just before that. And only then. > >>>> Kernel(s) CANARY built in 901 seconds, ncpu: 8, make -j16 > >>>> Installing kernel CANARY completed on Sun Jan 28 23:34:39 UTC 2024 > >>>> Installing everything started on Sun Jan 28 23:35:09 UTC 2024 > >>>> Installing everything completed on Sun Jan 28 23:37:16 UTC 2024 > > FreeBSD g1-48.catwhisker.org 14.0-STABLE FreeBSD 14.0-STABLE #41 stable/14-n266554-2ee407b6068a: Sun Jan 28 23:26:10 UTC 2024 root@g1-48.catwhisker.org:/common/S1/obj/usr/src/amd64.amd64/sys/CANARY amd64 1400506 1400506 > >>>> Removing old libraries > > g1-48(14.0-S)[5] > > > > (The ">>> Removing old libraries" is an artifact from "make > > delete-old-libs", which I do on the first reboot after a build.) > > > > If we just look at the "make buildworld" times, we see: > > > >>>> World built in 2351 seconds, ncpu: 8, make -j16 > >>>> World built in 116 seconds, ncpu: 8, make -j16 > >>>> World built in 124 seconds, ncpu: 8, make -j16 > > > > I suggest that -- within *this* "experiment's" error -- 116 sec is not > > significantly different from 124 sec, but that 2351 sec is significantly > > different from either. > > > > .... > > > > === > Mark Millard > marklmi at yahoo.com > .... Peace, david -- David H. Wolfskill david@catwhisker.org Do these ends really justify those means? See https://www.catwhisker.org/~david/publickey.gpg for my public key.