Builds succeeds even if syslinux failed to install in create-usb-image-from-iso
We (very rarely) see this in the build logs:
10:50:36 INFO:__main__:Executing 'chroot chroot /usr/bin/syslinux --offset 1048576 --directory /syslinux/ --install /tmp/tails-build.VYRjGHa2/tails-amd64-18655-zstd-squashfs-fastcomp@7295dacb8c+stable@920df5ae25-20211030T1012Z.img'
10:50:36 s:/syslinux/ldlinux.sys: no match for target
10:50:36 Segmentation fault
10:50:36 /usr/bin/syslinux: warning: unable to move ldlinux.sys
10:50:36 s:/syslinux/ldlinux.c32: no match for target
10:50:36 Segmentation fault
10:50:36 /usr/bin/syslinux: warning: unable to move ldlinux.c32
As a result, the generated USB image is unbootable, any automated test that boots in legacy BIOS mode from a USB image will fail, and developers will waste time trying to understand why a given branch breaks USB boot, while it should not.
It seems an external program run by syslinux
(mtools
, perhaps) segfaults and syslinux
does not notice this.
We could:
-
Ensure this problem is known by syslinux
upstream -
Optionally, add a workaround: fail the build if we see "Segmentation fault" in the output of syslinux
(!651 (merged))
Edited by intrigeri