Package: golang-go Version: 2:1.14~1 Severity: important Dear Maintainer,
the current go binary crashes on mipsel when running non-trivial calls (a trivial call would be like 'go version', which succeeds) with the message 'fatal error: gc_trigger underflow'. Here's an example from the mipsel porterbox: (sid_mipsel-dchroot)satta@eller:~$ go get github.com/satta/ethflux runtime: next_gc=5259264 heap_marked=292800 heap_live=292800 initialHeapLive=4210688triggerRatio=+0.000000e+000 minTrigger=4194304 fatal error: gc_trigger underflow goroutine 20 [running]: runtime.throw(0xa3ebd3, 0x14) /usr/lib/go-1.14/src/runtime/panic.go:1116 +0x60 fp=0x1430578 sp=0x1430564 pc=0x43dfec runtime.gcSetTriggerRatio(0x0, 0xffffffff) /usr/lib/go-1.14/src/runtime/mgc.go:834 +0x804 fp=0x14305f4 sp=0x1430578 pc=0x41f208 runtime.gcMarkTermination(0xffffffff, 0xffffffff) /usr/lib/go-1.14/src/runtime/mgc.go:1686 +0x26c fp=0x1430770 sp=0x14305f4 pc=0x4203dc runtime.gcMarkDone() /usr/lib/go-1.14/src/runtime/mgc.go:1610 +0x240 fp=0x143079c sp=0x1430770 pc=0x4200a0 runtime.gcBgMarkWorker(0x1424000) /usr/lib/go-1.14/src/runtime/mgc.go:2000 +0x2d4 fp=0x14307e4 sp=0x143079c pc=0x4215bc runtime.goexit() /usr/lib/go-1.14/src/runtime/asm_mipsx.s:651 +0x4 fp=0x14307e4 sp=0x14307e4 pc=0x476fdc created by runtime.gcBgMarkStartWorkers /usr/lib/go-1.14/src/runtime/mgc.go:1821 +0xb0 goroutine 1 [runnable]: cmd/go/internal/str.FoldDup(0x190a000, 0x1a5, 0x300, 0x300, 0x9dec00, 0x15eb0a0, 0x9dec00) /usr/lib/go-1.14/src/cmd/go/internal/str/str.go:84 +0x140 cmd/go/internal/load.(*Package).load(0x18cc280, 0x15ebed4, 0x14ae820, 0x0, 0x0) /usr/lib/go-1.14/src/cmd/go/internal/load/pkg.go:1673 +0x6d4 cmd/go/internal/load.loadImport(0x0, 0x14b1171, 0x7, 0x14b33e0, 0x29, 0x14c6a00, 0x15ebed4, 0x16929e0, 0x1, 0x1, ...) /usr/lib/go-1.14/src/cmd/go/internal/load/pkg.go:578 +0xd88 cmd/go/internal/load.LoadImport(0x14b1171, 0x7, 0x14b33e0, 0x29, 0x14c6a00, 0x15ebed4, 0x16929e0, 0x1, 0x1, 0x1, ...) /usr/lib/go-1.14/src/cmd/go/internal/load/pkg.go:531 +0x88 cmd/go/internal/load.(*Package).load(0x14c6a00, 0x15ebed4, 0x14ae680, 0x0, 0x0) /usr/lib/go-1.14/src/cmd/go/internal/load/pkg.go:1707 +0x1a2c cmd/go/internal/load.loadImport(0x0, 0x14b6e21, 0x14, 0x14b6b00, 0x1b, 0x14c6780, 0x15ebed4, 0x1491b20, 0x1, 0x1, ...) /usr/lib/go-1.14/src/cmd/go/internal/load/pkg.go:578 +0xd88 cmd/go/internal/load.LoadImport(0x14b6e21, 0x14, 0x14b6b00, 0x1b, 0x14c6780, 0x15ebed4, 0x1491b20, 0x1, 0x1, 0x1, ...) /usr/lib/go-1.14/src/cmd/go/internal/load/pkg.go:531 +0x88 cmd/go/internal/load.(*Package).load(0x14c6780, 0x15ebed4, 0x14ae340, 0x0, 0x0) /usr/lib/go-1.14/src/cmd/go/internal/load/pkg.go:1707 +0x1a2c cmd/go/internal/load.loadImport(0x0, 0x14b0341, 0x6, 0x14b63a0, 0x1a, 0x14c6280, 0x15ebed4, 0x14ac6c0, 0x2, 0x2, ...) /usr/lib/go-1.14/src/cmd/go/internal/load/pkg.go:578 +0xd88 cmd/go/internal/load.LoadImport(0x14b0341, 0x6, 0x14b63a0, 0x1a, 0x14c6280, 0x15ebed4, 0x14ac6c0, 0x2, 0x2, 0x1, ...) /usr/lib/go-1.14/src/cmd/go/internal/load/pkg.go:531 +0x88 cmd/go/internal/load.(*Package).load(0x14c6280, 0x15ebed4, 0x14ae1a0, 0x0, 0x0) /usr/lib/go-1.14/src/cmd/go/internal/load/pkg.go:1707 +0x1a2c cmd/go/internal/load.loadImport(0x0, 0x14b00a1, 0x5, 0x14b2090, 0x2b, 0x14c6000, 0x15ebed4, 0x1490360, 0x1, 0x1, ...) /usr/lib/go-1.14/src/cmd/go/internal/load/pkg.go:578 +0xd88 cmd/go/internal/load.LoadImport(0x14b00a1, 0x5, 0x14b2090, 0x2b, 0x14c6000, 0x15ebed4, 0x1490360, 0x1, 0x1, 0x1, ...) /usr/lib/go-1.14/src/cmd/go/internal/load/pkg.go:531 +0x88 cmd/go/internal/load.(*Package).load(0x14c6000, 0x15ebed4, 0x14ae000, 0x0, 0x0) /usr/lib/go-1.14/src/cmd/go/internal/load/pkg.go:1707 +0x1a2c cmd/go/internal/load.loadImport(0x0, 0x7f6fb885, 0x18, 0x141a014, 0xb, 0x0, 0x15ebed4, 0x0, 0x0, 0x0, ...) /usr/lib/go-1.14/src/cmd/go/internal/load/pkg.go:578 +0xd88 cmd/go/internal/load.LoadImport(0x7f6fb885, 0x18, 0x141a014, 0xb, 0x0, 0x15ebed4, 0x0, 0x0, 0x0, 0x0, ...) /usr/lib/go-1.14/src/cmd/go/internal/load/pkg.go:531 +0x88 cmd/go/internal/get.download.func1(0x7f6fb885, 0x18, 0x0, 0x3) /usr/lib/go-1.14/src/cmd/go/internal/get/get.go:233 +0xe4 cmd/go/internal/get.download(0x7f6fb885, 0x18, 0x0, 0x15ebed4, 0x0) /usr/lib/go-1.14/src/cmd/go/internal/get/get.go:305 +0xd84 cmd/go/internal/get.runGet(0xe36fa0, 0x1416110, 0x1, 0x2) /usr/lib/go-1.14/src/cmd/go/internal/get/get.go:162 +0x174 main.main() /usr/lib/go-1.14/src/cmd/go/main.go:189 +0x7a0 This also impacts mipsel builds of packages based on Go. I have tested this on three of my own packages, e.g. slinkwatch (see https://paste.debian.net/1146869/). Best regards Sascha