-
Notifications
You must be signed in to change notification settings - Fork 18.4k
Description
Go version
N/A
Output of go env in your module/workspace:
N/AWhat did you do?
I maintain the Go package for Alpine Linux, this package builds Go from source using ./make.bash.
While upgrading from Go 1.21.6 to Go 1.22.0 we noticed that Go itself wouldn't build on our armv7 CI.
What did you see happen?
Go 1.22.0 builds successful on Alpine x86_64, x86, armhf (GOARM=6), ppc64le, aarch64 and riscv64. It only fails to build on armv7 (GOARM=7). Furthermore, Go 1.21.6 builds fine on our armv7 CI. Therefore, I believe this to be a regression in Go 1.22.0. The build failure message is not consistent, there is probably a race condition somewhere. However, it always fails either after Building Go toolchain2 using go_bootstrap and Go toolchain1 or Building Go toolchain3 using go_bootstrap and Go toolchain2.
Build logs of some of the failures we have seen so far (as I said, the exact error message differs):
SIGSEGV: segmentation violation: alpine-edge-armv7-go-failure-sigsev.txtfatal error: checkdead: runnable g: alpine-edge-armv7-go-failure-checkdead.txtSIGILL: illegal instruction: alpine-edge-armv7-go-failure-sigill.txt- Sometimes it just deadlocks after
Building Go toolchain2 using go_bootstrap and Go toolchain1.
Any idea what might be causing this? Any hints on debugging this further?
What did you expect to see?
A successful build of Go 1.22.0 on all architectures.