maintainer-feedback requested: [Bug 278953] lang/go122: build fails on armv7 FreeBSD 13.3

From: <bugzilla-noreply_at_freebsd.org>
Date: Mon, 13 May 2024 14:47:40 UTC
Bugzilla Automation <bugzilla@FreeBSD.org> has asked Golang Team (Nobody)
<go@FreeBSD.org> for maintainer-feedback:
Bug 278953: lang/go122: build fails on armv7 FreeBSD 13.3
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=278953



--- Description ---
I'm trying to build lang/go 1.22.2 on armv7 FreeBSD 13.3 (specifically, in an
armv7 jail on an arm64 host).  The build fails reproducably when building
toolchain3:

Building Go toolchain3 using go_bootstrap and Go toolchain2.
fatal error: workbuf is not empty

runtime stack:
runtime.throw({0x4c643d, 0x14})
	/usr/local/go122/src/runtime/panic.go:1023 +0x4c fp=0x2905fefc
sp=0x2905fee8 pc=0x52544
runtime.(*workbuf).checkempty(0x294d4800)
	/usr/local/go122/src/runtime/mgcwork.go:344 +0x38 fp=0x2905ff08
sp=0x2905fefc pc=0x41944
runtime.getempty()
	/usr/local/go122/src/runtime/mgcwork.go:357 +0x70 fp=0x2905ff34
sp=0x2905ff08 pc=0x419cc
runtime.handoff(0x29318000)
	/usr/local/go122/src/runtime/mgcwork.go:439 +0x14 fp=0x2905ff48
sp=0x2905ff34 pc=0x41cfc
runtime.(*gcWork).balance(0x2903bc5c)
	/usr/local/go122/src/runtime/mgcwork.go:297 +0x44 fp=0x2905ff54
sp=0x2905ff48 pc=0x41840
runtime.gcDrainN(0x2903bc5c, 0xa3c0)
	/usr/local/go122/src/runtime/mgcmark.go:1304 +0x148 fp=0x2905ff7c
sp=0x2905ff54 pc=0x37fe8
runtime.gcAssistAlloc1(0x29276200, 0xa3c0)
	/usr/local/go122/src/runtime/mgcmark.go:665 +0x15c fp=0x2905ffd4
sp=0x2905ff7c pc=0x363e8
runtime.gcAssistAlloc.func1()
	/usr/local/go122/src/runtime/mgcmark.go:556 +0x2c fp=0x2905ffe4
sp=0x2905ffd4 pc=0x3627c
runtime.systemstack(0x0)
	/usr/local/go122/src/runtime/asm_arm.s:317 +0x60 fp=0x2905ffe8
sp=0x2905ffe4 pc=0x8c3bc

See attached build log for details.

The build fails on FreeBSD 14.0 in much the same way.  I'll try to bisect the
change from go 1.21 to 1.22 to find where the error is.