* [Buildroot] Remaining issues detected with toolchain-builders
@ 2024-07-30 20:35 Thomas Petazzoni via buildroot
0 siblings, 0 replies; only message in thread
From: Thomas Petazzoni via buildroot @ 2024-07-30 20:35 UTC (permalink / raw)
To: buildroot@buildroot.org; +Cc: Romain Naour, Dmitriy Chestnykh
Hello,
As part of preparing new pre-built toolchains based on Buildroot
2024.05 (hosted at toolchains.bootlin.com), I'm encountering a number
of issues, which I am summarizing in this e-mail.
The toolchains and tests are built based on the Buildroot branch at:
https://github.com/bootlin/buildroot-toolchains/tree/toolchains.bootlin.com-2024.05
Which is basically 2024.05 + a number of backports and a small number
of extra fixes.
Based on this, for each architecture/libc configuration, a toolchain
is built, packed as a tarball, and is then used as an external
toolchain to build a kernel+rootfs that is booted under Qemu (using
our Qemu defconfigs, but to use an external toolchain instead of the
internal toolchain).
sh-sh4
======
https://gitlab.com/buildroot.org/toolchains-builder/-/pipelines/1391146782
All toolchains built fine, but the test system did not boot in any of
the toolchain combinations.
In the sh-sh4--glibc--bleeding-edge_test
(https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7446074815),
Qemu complained with:
**
ERROR:../hw/intc/sh_intc.c:168:sh_intc_locate: code should not be reached
Bail out! ERROR:../hw/intc/sh_intc.c:168:sh_intc_locate: code should not be reached
Aborted (core dumped)
Connection problem, exiting.
With all other toolchains, there were no messages at all from Qemu:
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7446074827
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7446074831
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7446074832
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7446074833
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7446074834
One point worth mentioning is that the tests were all sucessful for
the sh-sh4aeb toolchains:
https://gitlab.com/buildroot.org/toolchains-builder/-/pipelines/1379541813
riscv32-ilp32d
==============
Here, only the riscv32-ilp32d--uclibc--stable_test fails to boot:
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7446076680
This has already been reported on the list, and an initial
investigation has been done by Waldemar. It seems like it could be a
time64 issue: the uClibc stable toolchain uses 4.19 kernel headers
(which predate time64) and generates a broken system, while the uClibc
bleeding edge toolchain, which uses 5.4 kernel headers, generates a
working system.
mips32r5el
==========
For this architecture, what we do is we use the qemu_mips32r2el_malta
defconfig, but we build it for MIPS32R5, and we boot it under Qemu
with the "-cpu P5600" argument, which is a MIPS32R5 CPU.
And all toolchains generate a system that fails to boot:
Run /sbin/init as init process
process '/bin/busybox' started with executable stack
Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000004
mips32r5el--glibc--bleeding-edge_test
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7377823322
mips32r5el--glibc--stable_test
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7377823324
mips32r5el--musl--bleeding-edge_test
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7377823325
mips32r5el--musl--stable_test
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7377823326
mips32r5el--uclibc--bleeding-edge_test
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7377823327
mips32r5el--uclibc--stable_test
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7377823329
The interesting thing is that those images boot fine with Qemu v8.2.6,
but they fail to boot with Qemu v9.0.2.
Is it a regression in Qemu, or something that we were doing that was
working by chance and that is now better emulated and in fact not
correct?
m68k-68xxx
==========
See https://gitlab.com/buildroot.org/toolchains-builder/-/pipelines/1379452858
The stable toolchains are working fine, but the bleeding edge
configurations are generating systems that don't boot.
With glibc:
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7377699056
mmap: kernel BUG at mm/mmap.c:3259!
*** TRAP #7 *** FORMAT=0
Current process id is 41
BAD KERNEL TRAP: 00000000
Modules linked in:
PC: [<000a3c22>] insert_vm_struct+0x0/0xee
SR: 2000 SP: cecacd44 a2: 00ab49c0
d0: 00000023 d1: 00000000 d2: 00000008 d3: 00000048
d4: 000a1560 d5: 00a3e360 a0: 00abfd1c a1: 004b93c6
Process rcS (pid: 41, task=d2eb12e9)
Frame format=0
Stack from 00abfd98:
00468a6f 00468a57 00000cbb 00000007 00abe0ff 400004d8 0000001e 00000006
00000000 00a3e360 00ab49c0 00a3e390 00abfe78 400000a3 e3640000 0001ffff
ffff00a5 af0c0000 0000ffff ffff0000 0000010a 000000a3 e360ffff ffffffff
ffff8000 00000001 00abfe04 00000000 00000000 00000008 005d8ef8 005d8c70
005d8e44 005d8d00 005d97f8 005d99cc 005d9a14 005d99f0 00016bea 00a3e360
00a3e360 00a3e360 0001b8aa 00a3e360 00a3e390 00000007 00abe000 400004d8
Call Trace: [<0001ffff>] cap_validate_magic+0x5b/0x114
[<0000ffff>] tblpre+0x28f/0x700
[<00016bea>] mmput+0x24/0x98
[<0001b8aa>] do_exit+0x1ea/0x8e8
[<0001c14e>] do_group_exit+0x1e/0x80
[<00025e02>] get_signal+0x782/0x7a6
[<00002010>] initcall_blacklisted+0x8/0x98
[<000043c4>] do_notify_resume+0x70/0x578
[<00024a6c>] force_sig_info_to_task+0xc0/0x152
[<00024d1e>] force_sig_fault+0x36/0x3e
[<00002738>] do_signal_return+0x10/0x1a
[<0010c00f>] sys_inotify_add_watch+0x3/0x3cc
With musl:
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7377699062
Run /sbin/init as init process
System did not boot in time, exiting.
With uClibc:
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7377699066
Run /sbin/init as init process
EXT4-fs (sda): re-mounted 8565f0ac-7559-4bf5-ad8c-bee4703f59fb r/w. Quota mode: disabled.
Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
Segmentation fault
arcle-750d
==========
Here we don't have a runtime failure, but a build time failure. I have
already reported it to Synopsys people, who are investigating.
arcle-750d--uclibc--bleeding-edge_build
https://gitlab.com/buildroot.org/toolchains-builder/-/jobs/7377622441
/builds/buildroot.org/toolchains-builder/build/arcle-750d--uclibc--bleeding-edge-2024.05-1/lib/gcc/arc-buildroot-linux-uclibc/14.1.0/../../../../arc
-buildroot-linux-uclibc/bin/ld: /builds/buildroot.org/toolchains-builder/build/arcle-750d--uclibc--bleeding-edge-2024.05-1/lib/gcc/arc-buildroot-lin
ux-uclibc/14.1.0/../../../../arc-buildroot-linux-uclibc/lib/libstdc++.so: undefined reference to `__atomic_test_and_set'
collect2: error: ld returned 1 exit status
I would definitely appreciate support in investigating/solving some of
those issues. Thanks in advance for your help!
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2024-07-30 20:35 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-30 20:35 [Buildroot] Remaining issues detected with toolchain-builders Thomas Petazzoni via buildroot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox