head -r355761 for amd64 self-hosted: installworld failed for: "btxld: not found" (-r35777 too, more sequencing evidence)
Mark Millard
marklmi at yahoo.com
Sun Dec 15 21:49:49 UTC 2019
On 2019-Dec-14, at 19:13, Mark Millard <marklmi at yahoo.com> wrote:
> I give various details based on how I got past it as well
> as the original error messages.
>
> This was a -j32 threadripper 1950X context at the start:
> the installworld with -j32 got:
>
> --- realinstall_subdir_stand ---
> btxld -v -E 0x2000 -f bin -b /usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/stand/i386/btx/btx/btx -l boot2.ldr -o boot2.ld -P 1 boot2.bin
> . . .
> --- realinstall_subdir_stand ---
> sh: btxld: not found
> . . .
> --- realinstall_subdir_stand ---
> *** [boot2.ld] Error code 127
>
>
> However retrying without the -j32 got:
>
> ===> stand/i386/btx (install)
> ===> stand/i386/btx/btx (install)
> ===> stand/i386/btx/btxldr (install)
> ===> stand/i386/btx/lib (install)
> ===> stand/i386/boot2 (install)
> btxld -v -E 0x2000 -f bin -b /usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/stand/i386/btx/btx/btx -l boot2.ldr -o boot2.ld -P 1 boot2.bin
> make[6]: exec(btxld) failed (No such file or directory)
> *** Error code 1
>
> Stop.
> make[6]: stopped in /usr/src/stand/i386/boot2
> *** Error code 1
>
>
> Retrying the buildworld buildkernel and then the installworld,
> all without -j32 and without forcing it to start from
> scratch, got past the problem.
>
> The original -j32 buildworld buildkernel log shows:
>
> # grep "btxld\>" ~/sys_typescripts/typescript_make_amd64_nodebug_clang-amd64-host-2019-12-14:18:01:22 | more
> --- includes_subdir_usr.sbin/btxld ---
> ===> usr.sbin/btxld (includes)
> --- all_subdir_usr.sbin/btxld ---
> ===> usr.sbin/btxld (all)
> Building /usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/usr.sbin/btxld/btxld.o
> --- all_subdir_usr.sbin/btxld ---
> Building /usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/usr.sbin/btxld/elfh.o
> Building /usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/usr.sbin/btxld/btxld.full
> --- all_subdir_usr.sbin/btxld ---
> Building /usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/usr.sbin/btxld/btxld.debug
> Building /usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/usr.sbin/btxld/btxld
>
> The times in that directory show that the non-j32 build
> did generate btxld and btxld.debug but the btx.full was
> from the earlier -j32 build:
>
> # ls -laTt /usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/usr.sbin/btxld/
> total 200
> -rw-r--r-- 1 root wheel 715 Dec 14 18:46:16 2019 btxld.meta
> -rwxr-xr-x 1 root wheel 27504 Dec 14 18:46:16 2019 btxld
> -rw-r--r-- 1 root wheel 550 Dec 14 18:46:16 2019 btxld.debug.meta
> -rwxr-xr-x 1 root wheel 28968 Dec 14 18:46:16 2019 btxld.debug
> -rwxr-xr-x 1 root wheel 49568 Dec 14 18:19:13 2019 btxld.full
> drwxrwxr-x 2 root wheel 512 Dec 14 18:18:54 2019 .
> -rw-r--r-- 1 root wheel 3308 Dec 14 18:18:54 2019 btxld.full.meta
> -rw-r--r-- 1 root wheel 4088 Dec 14 18:18:54 2019 elfh.o.meta
> -rw-r--r-- 1 root wheel 4880 Dec 14 18:18:54 2019 elfh.o
> -rw-r--r-- 1 root wheel 7371 Dec 14 18:18:54 2019 btxld.o.meta
> -rw-r--r-- 1 root wheel 37824 Dec 14 18:18:54 2019 btxld.o
> drwxrwxr-x 225 root wheel 4096 Nov 22 22:53:23 2019 ..
> -rw-r--r-- 1 root wheel 971 Nov 9 08:29:35 2018 btxld.8.gz.meta
> -rw-r--r-- 1 root wheel 1429 Nov 9 08:29:35 2018 btxld.8.gz
>
> I do not know if this is some sort of race that silently
> stopped btxld and btxld.debug from being generated (despite
> the "Building" lines).
The installworld failure happened again when I tried to update to head
-r355777 .
This time I'm looking at the buildworld directory content before trying
the not from scratch rebuild (possibly without -j32):
# ls -laTt /usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/usr.sbin/btxld/
total 200
-rwxr-xr-x 1 root wheel 49568 Dec 15 12:14:30 2019 btxld.full
-rw-r--r-- 1 root wheel 754 Dec 15 12:14:03 2019 btxld.meta
-rwxr-xr-x 1 root wheel 27504 Dec 15 12:14:03 2019 btxld
-rw-r--r-- 1 root wheel 735 Dec 15 12:14:03 2019 btxld.debug.meta
-rwxr-xr-x 1 root wheel 28968 Dec 15 12:14:03 2019 btxld.debug
drwxrwxr-x 2 root wheel 512 Dec 15 12:14:02 2019 .
-rw-r--r-- 1 root wheel 3308 Dec 15 12:14:02 2019 btxld.full.meta
-rw-r--r-- 1 root wheel 4088 Dec 15 12:14:02 2019 elfh.o.meta
-rw-r--r-- 1 root wheel 4880 Dec 15 12:14:02 2019 elfh.o
-rw-r--r-- 1 root wheel 7371 Dec 15 12:14:02 2019 btxld.o.meta
-rw-r--r-- 1 root wheel 37824 Dec 15 12:14:02 2019 btxld.o
drwxrwxr-x 225 root wheel 4096 Nov 22 22:53:23 2019 ..
-rw-r--r-- 1 root wheel 971 Nov 9 08:29:35 2018 btxld.8.gz.meta
-rw-r--r-- 1 root wheel 1429 Nov 9 08:29:35 2018 btxld.8.gz
It looks like btxld.full finished well after btxld.debug and btxld
finished (despite btxld.full.meta being first). But the Start/Stop
figures listed in the .meta files do not show this (I edited to
align text to make comparison easier):
# cd /usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/usr.sbin/btxld/
# egrep -r "(Start|Stop)" *.meta | sort -k 3
btxld.8.gz.meta:# Start 1541780975.497012
btxld.8.gz.meta:# Stop 1541780975.497012
btxld.o.meta:# Start 1576440842.623179
btxld.o.meta:# Stop 1576440842.932180
elfh.o.meta:# Start 1576440842.933179
elfh.o.meta:# Stop 1576440842.974180
btxld.full.meta:# Start 1576440842.975180
btxld.debug.meta:# Start 1576440842.998180
btxld.full.meta:# Stop 1576440842.998180
btxld.debug.meta:# Stop 1576440843.001179
btxld.meta:# Start 1576440843.001179
btxld.meta:# Stop 1576440843.004179
(I did not sub-sort equal timestamps so ordering information
is not unique for such.)
After the rebuild (not from scratch but with -j32 still):
# ls -laTt /usr/obj/amd64_clang/amd64.amd64/usr/src/amd64.amd64/usr.sbin/btxld/
total 200
-rw-r--r-- 1 root wheel 754 Dec 15 13:39:44 2019 btxld.meta
-rwxr-xr-x 1 root wheel 27504 Dec 15 13:39:44 2019 btxld
-rw-r--r-- 1 root wheel 735 Dec 15 13:39:44 2019 btxld.debug.meta
-rwxr-xr-x 1 root wheel 28968 Dec 15 13:39:44 2019 btxld.debug
-rwxr-xr-x 1 root wheel 49568 Dec 15 12:14:30 2019 btxld.full
drwxrwxr-x 2 root wheel 512 Dec 15 12:14:02 2019 .
-rw-r--r-- 1 root wheel 3308 Dec 15 12:14:02 2019 btxld.full.meta
-rw-r--r-- 1 root wheel 4088 Dec 15 12:14:02 2019 elfh.o.meta
-rw-r--r-- 1 root wheel 4880 Dec 15 12:14:02 2019 elfh.o
-rw-r--r-- 1 root wheel 7371 Dec 15 12:14:02 2019 btxld.o.meta
-rw-r--r-- 1 root wheel 37824 Dec 15 12:14:02 2019 btxld.o
drwxrwxr-x 225 root wheel 4096 Nov 22 22:53:23 2019 ..
-rw-r--r-- 1 root wheel 971 Nov 9 08:29:35 2018 btxld.8.gz.meta
-rw-r--r-- 1 root wheel 1429 Nov 9 08:29:35 2018 btxld.8.gz
And, again, the installworld worked after that.
===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)
More information about the freebsd-toolchain
mailing list