Date: Sun, 18 Aug 2019 01:27:50 -0700 From: Mark Millard <marklmi@yahoo.com> To: Niclas Zeising <zeising@freebsd.org> Cc: freebsd-ports@freebsd.org Subject: Re: FYI: x11/xscreensaver appears to have a build-race Message-ID: <B5C40D5D-A558-4325-95AC-11A027A280CD@yahoo.com> In-Reply-To: <ed9946a1-978f-921b-a17b-7c8b47e28a4b@freebsd.org> References: <6EAA8CE2-3521-42D9-9B6D-30C40CE442B4@yahoo.com> <40596e0e-d455-6b34-9564-e5d0c9c1ab95@freebsd.org> <BDF3EF0C-1616-4795-8B98-DE6305E35A2A@yahoo.com> <ed9946a1-978f-921b-a17b-7c8b47e28a4b@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2019-Aug-18, at 01:03, Niclas Zeising <zeising@freebsd.org> wrote: > On 2019-08-18 09:48, Mark Millard wrote: >> On 2019-Aug-18, at 00:34, Niclas Zeising <zeising at freebsd.org> = wrote: >>> On 2019-08-18 09:07, Mark Millard via freebsd-ports wrote: >>>> I ran two separate devel/poudriere-devel amd64->aarch64 >>>> cross builds on the same system (head -r 351178 based) >>>> with the same /usr/ports/ tree (ports head -r509171), >>>> building the same 97 ports each, mostly overlapping >>>> in time, and one got: >>>> gmake[2]: *** [Makefile:37: gen/apple_png.h] Error 2 >>>> while building x11/xscreensaver but the other >>>> completed building x11/xscreensaver just fine. >>>> There was also a armv7-targeting poudriere-devel ports >>>> update running, also mostly overlapping in time. With >>>> 28 FreeBSD CPUs (under Hyper-V), the load average was >>>> frequently over 90. (The armv7 x11/xscreensaver build >>>> also completed fine.) >>>> All 3 poudriere's had ALLOW_MAKE_JOBS=3Dyes and all 3 set >>>> up to have "Building 97 packages using 28 builders". >>>> devel/llvm90 was one of the ports being built. All 3 >>>> poudriere's had native-xtools in use. The context has >>>> ECC DRAM, 96 GiBytes worth. >>>=20 >>> I'm just about to update x11/xscreensaver, but through multiple = poudriere runs I haven't noticed any issues. I have a much smaller = machine to do builds on though. >>> It would be interesting to see more context of the error as well. >> Here you go: >=20 > Thank you >=20 >> The overall build is still in progress. So I've not had >> a chance to run poudriere again to have it retry just >> the 3 ports (1 failed and 2 skipped). (Presumes the rest >> build okay.) >> A race suggests that MAKE_JOBS_UNSAFE=3Dyes may well be appropriate. >=20 > I'll look into it. However, this is the only report I have of this = issue, so it's not very common, and setting MAKE_JOBS_UNSAFE would slow = down the build quite a lot. >=20 > The error is a little strange, since it looks like it is when = generating apple_png.h. I wonder which file it is that it complains = about not being there... =46rom what I can tell: ../../utils/bin2c apple.png gen/apple_png.h is supposed to produce gen/apple_png.h from the binary file apple.png . Presuming that is true, the: gmake[2]: *** [Makefile:37: gen/apple_png.h] Error 2 indicates that the Makefile tried to reference gen/apple_png.h before ../../utils/bin2c had gotten around to creating gen/apple_png.h (the race). Similar points go for gen/atm_png.h gen/atari_png.h and gen/earth_png.h . The original 3 builds completed so I started poudriere again for the failing one, without the machine being otherwise busy. The result was: [00:00:36] [01] [00:00:00] Building x11/xscreensaver | xscreensaver-5.42 [00:04:25] [01] [00:03:49] Finished x11/xscreensaver | = xscreensaver-5.42: Success This too suggests a race condition. If the FreeBSD port-build servers report this sort of failure at some point, you may then want to change things to avoid the failures on those servers so that dependent ports are not skipped. =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?B5C40D5D-A558-4325-95AC-11A027A280CD>