New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

runtime: signal 28 received on thread with no signal stack #22333

Open
jimrobinson opened this Issue Oct 18, 2017 · 3 comments

Comments

Projects
None yet
3 participants
@jimrobinson

jimrobinson commented Oct 18, 2017

Please answer these questions before submitting your issue. Thanks!

What version of Go are you using (go version)?

go version go1.8.3 darwin/amd64

Note this seems to be the same as Closed bug #16468 from v1.6.

Does this issue reproduce with the latest release?

could not reproduce even w/o changing anything else

What operating system and processor architecture are you using (go env)?

MacOS 10.12.6 (16G29)

$ go env
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/jimr/Library/gocode:/Users/jimr/proj/github:/Users/jimr/proj/code/gocode/trunk"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/jz/618480gn79q0flkfzpspqs8h0000gn/T/go-build442434706=/tmp/go-build -gno-record-gcc-switches -fno-common"
CXX="clang++"
CGO_ENABLED="1"
PKG_CONFIG="pkg-config"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"

What did you do?

ran "go build" and immediately started to resize the terminal window, at which point the stack was dumped by go build. I can't tell if the resize and dump were cause and effect, but I haven't been able to reproduce the problem.

If possible, provide a recipe for reproducing the error.
A complete runnable program is good.
A link on play.golang.org is best.

What did you expect to see?

go build should have completed w/o panic

What did you see instead?

$ go build
signal 28 received on thread with no signal stack
fatal error: non-Go code disabled sigaltstack

runtime stack:
runtime.throw(0x149aa79, 0x20)
	/usr/local/go/src/runtime/panic.go:596 +0x95
runtime.noSignalStack(0x1c)
	/usr/local/go/src/runtime/signal_unix.go:455 +0x94
runtime.sigtrampgo(0x657669740000001c, 0xc420506d10, 0xc420506d78)
	/usr/local/go/src/runtime/signal_unix.go:238 +0x2d8
runtime.sigtramp(0x2065726120657365, 0x63696e756d6d6f63, 0x2079622064657461, 0x200000200000085, 0xc4202300f0, 0x10a4c, 0xc420128000, 0xc420506e30, 0x1, 0x0, ...)
	/usr/local/go/src/runtime/sys_darwin_amd64.s:240 +0x28

goroutine 17 [syscall, locked to thread]:
runtime.goexit()
	/usr/local/go/src/runtime/asm_amd64.s:2197 +0x1 fp=0xc42003efe8 sp=0xc42003efe0

goroutine 1 [semacquire]:
sync.runtime_Semacquire(0xc42025437c)
	/usr/local/go/src/runtime/sema.go:47 +0x34
sync.(*WaitGroup).Wait(0xc420254370)
	/usr/local/go/src/sync/waitgroup.go:131 +0x7a
main.(*builder).do(0xc420136380, 0xc4202dad00)
	/usr/local/go/src/cmd/go/build.go:1370 +0x4be
main.runBuild(0x168d5e0, 0xc42000c270, 0x0, 0x0)
	/usr/local/go/src/cmd/go/build.go:526 +0x32b
main.main()
	/usr/local/go/src/cmd/go/main.go:184 +0x69d

goroutine 5 [syscall]:
os/signal.signal_recv(0x0)
	/usr/local/go/src/runtime/sigqueue.go:116 +0xff
os/signal.loop()
	/usr/local/go/src/os/signal/signal_unix.go:22 +0x22
created by os/signal.init.1
	/usr/local/go/src/os/signal/signal_unix.go:28 +0x41

goroutine 82 [syscall]:
syscall.Syscall(0x3, 0x8, 0xc42020e200, 0x200, 0xc42020e200, 0x200, 0x1474640)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:16 +0x5
syscall.read(0x8, 0xc42020e200, 0x200, 0x200, 0xc420262000, 0x1766960, 0x0)
	/usr/local/go/src/syscall/zsyscall_darwin_amd64.go:973 +0x55
syscall.Read(0x8, 0xc42020e200, 0x200, 0x200, 0x102990f, 0x14b3ed8, 0xc42002e5c0)
	/usr/local/go/src/syscall/syscall_unix.go:162 +0x49
os.(*File).read(0xc420124048, 0xc42020e200, 0x200, 0x200, 0x10676ab, 0x13fd9a0, 0x200)
	/usr/local/go/src/os/file_unix.go:165 +0x6a
os.(*File).Read(0xc420124048, 0xc42020e200, 0x200, 0x200, 0x148fa66, 0x9, 0xc42002e660)
	/usr/local/go/src/os/file.go:101 +0x76
bytes.(*Buffer).ReadFrom(0xc4200b65b0, 0x165cc00, 0xc420124048, 0x1a40028, 0xc4200b65b0, 0x1050001)
	/usr/local/go/src/bytes/buffer.go:179 +0x160
io.copyBuffer(0x165bbc0, 0xc4200b65b0, 0x165cc00, 0xc420124048, 0x0, 0x0, 0x0, 0xc4200984e0, 0xc42002e7a0, 0x100644c)
	/usr/local/go/src/io/io.go:384 +0x2cb
io.Copy(0x165bbc0, 0xc4200b65b0, 0x165cc00, 0xc420124048, 0x80, 0xc42002e7a0, 0x0)
	/usr/local/go/src/io/io.go:360 +0x68
os/exec.(*Cmd).writerDescriptor.func1(0x0, 0xc42002e7c8)
	/usr/local/go/src/os/exec/exec.go:254 +0x4d
os/exec.(*Cmd).Start.func1(0xc4201e62c0, 0xc4200fccc0)
	/usr/local/go/src/os/exec/exec.go:371 +0x27
created by os/exec.(*Cmd).Start
	/usr/local/go/src/os/exec/exec.go:372 +0x4e4

goroutine 34 [syscall]:
syscall.Syscall6(0xad, 0x1, 0x10a45, 0xc420503118, 0x24, 0x0, 0x0, 0x17664b0, 0x0, 0xc4200fcc80)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:41 +0x5
os.(*Process).blockUntilWaitable(0xc4204565a0, 0xc4201e62c0, 0xc4200fccc0, 0x16)
	/usr/local/go/src/os/wait_waitid.go:28 +0xa5
os.(*Process).wait(0xc4204565a0, 0xc4203c2800, 0xc420124060, 0xc4201e6160)
	/usr/local/go/src/os/exec_unix.go:22 +0x4d
os.(*Process).Wait(0xc4204565a0, 0x0, 0x0, 0x14b4810)
	/usr/local/go/src/os/exec.go:115 +0x2b
os/exec.(*Cmd).Wait(0xc4201e62c0, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:435 +0x62
os/exec.(*Cmd).Run(0xc4201e62c0, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:280 +0x5c
main.(*builder).runOut(0xc420136380, 0xc42024c0c0, 0x56, 0xc4201cd6c0, 0x3a, 0x0, 0x0, 0x0, 0xc4201e6000, 0x13, ...)
	/usr/local/go/src/cmd/go/build.go:2141 +0x42b
main.gcToolchain.gc(0xc420136380, 0xc4203ccd80, 0xc420115900, 0x7f, 0xc420446360, 0x83, 0xc4201fd401, 0xc4200fca60, 0x2, 0x2, ...)
	/usr/local/go/src/cmd/go/build.go:2401 +0xfc1
main.(*gcToolchain).gc(0x16b1380, 0xc420136380, 0xc4203ccd80, 0xc420115900, 0x7f, 0xc420446360, 0x83, 0x1, 0xc4200fca60, 0x2, ...)
	<autogenerated>:5 +0x105
main.(*builder).build(0xc420136380, 0xc42031e9c0, 0x0, 0x0)
	/usr/local/go/src/cmd/go/build.go:1537 +0xadc
main.(*builder).do.func1(0xc42031e9c0)
	/usr/local/go/src/cmd/go/build.go:1302 +0x7d
main.(*builder).do.func2(0xc420254370, 0xc420136380, 0xc42013df20)
	/usr/local/go/src/cmd/go/build.go:1361 +0x145
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 35 [syscall]:
syscall.Syscall6(0xad, 0x1, 0x10a49, 0xc420523118, 0x24, 0x0, 0x0, 0x17664b0, 0x0, 0xc4202061c0)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:41 +0x5
os.(*Process).blockUntilWaitable(0xc4204565d0, 0xc420430160, 0xc420206200, 0x12)
	/usr/local/go/src/os/wait_waitid.go:28 +0xa5
os.(*Process).wait(0xc4204565d0, 0xc4204dac00, 0xc420454030, 0xc4201fa000)
	/usr/local/go/src/os/exec_unix.go:22 +0x4d
os.(*Process).Wait(0xc4204565d0, 0x0, 0x0, 0x14b4810)
	/usr/local/go/src/os/exec.go:115 +0x2b
os/exec.(*Cmd).Wait(0xc420430160, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:435 +0x62
os/exec.(*Cmd).Run(0xc420430160, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:280 +0x5c
main.(*builder).runOut(0xc420136380, 0xc4202f7e00, 0x56, 0xc42013fa00, 0x3a, 0x0, 0x0, 0x0, 0xc420430000, 0xe, ...)
	/usr/local/go/src/cmd/go/build.go:2141 +0x42b
main.gcToolchain.gc(0xc420136380, 0xc4204b4d80, 0xc420115a00, 0x7f, 0xc420446630, 0x83, 0xc4201fd400, 0xc420206040, 0x2, 0x2, ...)
	/usr/local/go/src/cmd/go/build.go:2401 +0xfc1
main.(*gcToolchain).gc(0x16b1380, 0xc420136380, 0xc4204b4d80, 0xc420115a00, 0x7f, 0xc420446630, 0x83, 0x0, 0xc420206040, 0x2, ...)
	<autogenerated>:5 +0x105
main.(*builder).build(0xc420136380, 0xc42031ed00, 0x0, 0x0)
	/usr/local/go/src/cmd/go/build.go:1537 +0xadc
main.(*builder).do.func1(0xc42031ed00)
	/usr/local/go/src/cmd/go/build.go:1302 +0x7d
main.(*builder).do.func2(0xc420254370, 0xc420136380, 0xc42013df20)
	/usr/local/go/src/cmd/go/build.go:1361 +0x145
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 36 [syscall]:
syscall.Syscall6(0xad, 0x1, 0x10a47, 0xc420513118, 0x24, 0x0, 0x0, 0x1766000, 0x0, 0xc42035e5e0)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:41 +0x5
os.(*Process).blockUntilWaitable(0xc4204b87b0, 0xc420110160, 0xc42035e620, 0x10)
	/usr/local/go/src/os/wait_waitid.go:28 +0xa5
os.(*Process).wait(0xc4204b87b0, 0xc420484400, 0xc42024a030, 0xc42000aa00)
	/usr/local/go/src/os/exec_unix.go:22 +0x4d
os.(*Process).Wait(0xc4204b87b0, 0x0, 0x0, 0x14b4810)
	/usr/local/go/src/os/exec.go:115 +0x2b
os/exec.(*Cmd).Wait(0xc420110160, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:435 +0x62
os/exec.(*Cmd).Run(0xc420110160, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:280 +0x5c
main.(*builder).runOut(0xc420136380, 0xc42010e620, 0x65, 0xc420123630, 0x49, 0x0, 0x0, 0x0, 0xc420110000, 0xd, ...)
	/usr/local/go/src/cmd/go/build.go:2141 +0x42b
main.gcToolchain.gc(0xc420136380, 0xc4203cc900, 0xc420446240, 0x8e, 0xc420382640, 0x92, 0xc4201fd400, 0xc42035e480, 0x2, 0x2, ...)
	/usr/local/go/src/cmd/go/build.go:2401 +0xfc1
main.(*gcToolchain).gc(0x16b1380, 0xc420136380, 0xc4203cc900, 0xc420446240, 0x8e, 0xc420382640, 0x92, 0x0, 0xc42035e480, 0x2, ...)
	<autogenerated>:5 +0x105
main.(*builder).build(0xc420136380, 0xc42031e8f0, 0x0, 0x0)
	/usr/local/go/src/cmd/go/build.go:1537 +0xadc
main.(*builder).do.func1(0xc42031e8f0)
	/usr/local/go/src/cmd/go/build.go:1302 +0x7d
main.(*builder).do.func2(0xc420254370, 0xc420136380, 0xc42013df20)
	/usr/local/go/src/cmd/go/build.go:1361 +0x145
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 37 [running]:
	goroutine running on other thread; stack unavailable
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 38 [syscall]:
syscall.Syscall6(0xad, 0x1, 0x10a48, 0xc420527118, 0x24, 0x0, 0x0, 0x1767770, 0x0, 0xc4201e41a0)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:41 +0x5
os.(*Process).blockUntilWaitable(0xc4203ca8d0, 0xc4202c4160, 0xc4201e4220, 0x12)
	/usr/local/go/src/os/wait_waitid.go:28 +0xa5
os.(*Process).wait(0xc4203ca8d0, 0xc420177000, 0xc4204d4030, 0xc420096240)
	/usr/local/go/src/os/exec_unix.go:22 +0x4d
os.(*Process).Wait(0xc4203ca8d0, 0x0, 0x0, 0x14b4810)
	/usr/local/go/src/os/exec.go:115 +0x2b
os/exec.(*Cmd).Wait(0xc4202c4160, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:435 +0x62
os/exec.(*Cmd).Run(0xc4202c4160, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:280 +0x5c
main.(*builder).runOut(0xc420136380, 0xc4203eddb0, 0x4d, 0xc420120800, 0x31, 0x0, 0x0, 0x0, 0xc4202c4000, 0xe, ...)
	/usr/local/go/src/cmd/go/build.go:2141 +0x42b
main.gcToolchain.gc(0xc420136380, 0xc4204b5680, 0xc420115b80, 0x76, 0xc420115b00, 0x7a, 0xc4201fd400, 0xc4201e4040, 0x2, 0x2, ...)
	/usr/local/go/src/cmd/go/build.go:2401 +0xfc1
main.(*gcToolchain).gc(0x16b1380, 0xc420136380, 0xc4204b5680, 0xc420115b80, 0x76, 0xc420115b00, 0x7a, 0x0, 0xc4201e4040, 0x2, ...)
	<autogenerated>:5 +0x105
main.(*builder).build(0xc420136380, 0xc42031edd0, 0x0, 0x0)
	/usr/local/go/src/cmd/go/build.go:1537 +0xadc
main.(*builder).do.func1(0xc42031edd0)
	/usr/local/go/src/cmd/go/build.go:1302 +0x7d
main.(*builder).do.func2(0xc420254370, 0xc420136380, 0xc42013df20)
	/usr/local/go/src/cmd/go/build.go:1361 +0x145
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 39 [syscall]:
syscall.Syscall6(0xad, 0x1, 0x10a4b, 0xc42052b118, 0x24, 0x0, 0x0, 0x17680d0, 0x0, 0xc4202ba1e0)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:41 +0x5
os.(*Process).blockUntilWaitable(0xc42035c3f0, 0xc4203022c0, 0xc4202ba260, 0x1a)
	/usr/local/go/src/os/wait_waitid.go:28 +0xa5
os.(*Process).wait(0xc42035c3f0, 0xc4204dc800, 0xc4202b6030, 0xc4200981a0)
	/usr/local/go/src/os/exec_unix.go:22 +0x4d
os.(*Process).Wait(0xc42035c3f0, 0x0, 0x0, 0x14b4810)
	/usr/local/go/src/os/exec.go:115 +0x2b
os/exec.(*Cmd).Wait(0xc4203022c0, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:435 +0x62
os/exec.(*Cmd).Run(0xc4203022c0, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:280 +0x5c
main.(*builder).runOut(0xc420136380, 0xc420113b00, 0x54, 0xc420247900, 0x38, 0x0, 0x0, 0x0, 0xc4202382c0, 0x17, ...)
	/usr/local/go/src/cmd/go/build.go:2141 +0x42b
main.gcToolchain.gc(0xc420136380, 0xc42027f680, 0xc4201a6000, 0x7d, 0xc420446750, 0x81, 0xc4201fd400, 0xc4202ba020, 0x2, 0x2, ...)
	/usr/local/go/src/cmd/go/build.go:2401 +0xfc1
main.(*gcToolchain).gc(0x16b1380, 0xc420136380, 0xc42027f680, 0xc4201a6000, 0x7d, 0xc420446750, 0x81, 0x0, 0xc4202ba020, 0x2, ...)
	<autogenerated>:5 +0x105
main.(*builder).build(0xc420136380, 0xc42031f040, 0x0, 0x0)
	/usr/local/go/src/cmd/go/build.go:1537 +0xadc
main.(*builder).do.func1(0xc42031f040)
	/usr/local/go/src/cmd/go/build.go:1302 +0x7d
main.(*builder).do.func2(0xc420254370, 0xc420136380, 0xc42013df20)
	/usr/local/go/src/cmd/go/build.go:1361 +0x145
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 40 [running]:
	goroutine running on other thread; stack unavailable
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 41 [syscall]:
syscall.Syscall6(0xad, 0x1, 0x10a46, 0xc420517118, 0x24, 0x0, 0x0, 0x1766e10, 0x0, 0xc42000c520)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:41 +0x5
os.(*Process).blockUntilWaitable(0xc420270c60, 0xc420414160, 0xc42000c580, 0x14)
	/usr/local/go/src/os/wait_waitid.go:28 +0xa5
os.(*Process).wait(0xc420270c60, 0xc420469400, 0xc42000e050, 0xc4200ae000)
	/usr/local/go/src/os/exec_unix.go:22 +0x4d
os.(*Process).Wait(0xc420270c60, 0x0, 0x0, 0x14b4810)
	/usr/local/go/src/os/exec.go:115 +0x2b
os/exec.(*Cmd).Wait(0xc420414160, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:435 +0x62
os/exec.(*Cmd).Run(0xc420414160, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:280 +0x5c
main.(*builder).runOut(0xc420136380, 0xc420391b60, 0x5d, 0xc420353680, 0x41, 0x0, 0x0, 0x0, 0xc420414000, 0x10, ...)
	/usr/local/go/src/cmd/go/build.go:2141 +0x42b
main.gcToolchain.gc(0xc420136380, 0xc4203cdb00, 0xc420446510, 0x86, 0xc420446480, 0x8a, 0xc4201fd400, 0xc42000c1e0, 0x2, 0x2, ...)
	/usr/local/go/src/cmd/go/build.go:2401 +0xfc1
main.(*gcToolchain).gc(0x16b1380, 0xc420136380, 0xc4203cdb00, 0xc420446510, 0x86, 0xc420446480, 0x8a, 0x0, 0xc42000c1e0, 0x2, ...)
	<autogenerated>:5 +0x105
main.(*builder).build(0xc420136380, 0xc42031eb60, 0x0, 0x0)
	/usr/local/go/src/cmd/go/build.go:1537 +0xadc
main.(*builder).do.func1(0xc42031eb60)
	/usr/local/go/src/cmd/go/build.go:1302 +0x7d
main.(*builder).do.func2(0xc420254370, 0xc420136380, 0xc42013df20)
	/usr/local/go/src/cmd/go/build.go:1361 +0x145
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 51 [syscall]:
syscall.Syscall(0x3, 0x20, 0xc420406200, 0x200, 0x0, 0x0, 0x0)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:16 +0x5
syscall.read(0x20, 0xc420406200, 0x200, 0x200, 0xc4204dcc00, 0x17680d0, 0x0)
	/usr/local/go/src/syscall/zsyscall_darwin_amd64.go:973 +0x55
syscall.Read(0x20, 0xc420406200, 0x200, 0x200, 0x102990f, 0x14b3ed8, 0xc4204f3dc0)
	/usr/local/go/src/syscall/syscall_unix.go:162 +0x49
os.(*File).read(0xc4202b6018, 0xc420406200, 0x200, 0x200, 0x10676ab, 0x13fd9a0, 0x200)
	/usr/local/go/src/os/file_unix.go:165 +0x6a
os.(*File).Read(0xc4202b6018, 0xc420406200, 0x200, 0x200, 0x0, 0x0, 0xc4204f3e60)
	/usr/local/go/src/os/file.go:101 +0x76
bytes.(*Buffer).ReadFrom(0xc42020c380, 0x165cc00, 0xc4202b6018, 0x1a40028, 0xc42020c380, 0x1)
	/usr/local/go/src/bytes/buffer.go:179 +0x160
io.copyBuffer(0x165bbc0, 0xc42020c380, 0x165cc00, 0xc4202b6018, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
	/usr/local/go/src/io/io.go:384 +0x2cb
io.Copy(0x165bbc0, 0xc42020c380, 0x165cc00, 0xc4202b6018, 0x0, 0x0, 0x0)
	/usr/local/go/src/io/io.go:360 +0x68
os/exec.(*Cmd).writerDescriptor.func1(0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:254 +0x4d
os/exec.(*Cmd).Start.func1(0xc4203022c0, 0xc4202ba260)
	/usr/local/go/src/os/exec/exec.go:371 +0x27
created by os/exec.(*Cmd).Start
	/usr/local/go/src/os/exec/exec.go:372 +0x4e4

goroutine 66 [syscall]:
syscall.Syscall(0x3, 0x14, 0xc42027c200, 0x200, 0xc42027c200, 0x200, 0xc42019e56a)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:16 +0x5
syscall.read(0x14, 0xc42027c200, 0x200, 0x200, 0xc420129000, 0x1766e10, 0x0)
	/usr/local/go/src/syscall/zsyscall_darwin_amd64.go:973 +0x55
syscall.Read(0x14, 0xc42027c200, 0x200, 0x200, 0x102990f, 0x14b3ed8, 0xc4204f95c0)
	/usr/local/go/src/syscall/syscall_unix.go:162 +0x49
os.(*File).read(0xc4204d4018, 0xc42027c200, 0x200, 0x200, 0x10676ab, 0x13fd9a0, 0x200)
	/usr/local/go/src/os/file_unix.go:165 +0x6a
os.(*File).Read(0xc4204d4018, 0xc42027c200, 0x200, 0x200, 0xc420440e00, 0xc4204f9670, 0xc4204f9660)
	/usr/local/go/src/os/file.go:101 +0x76
bytes.(*Buffer).ReadFrom(0xc42016e380, 0x165cc00, 0xc4204d4018, 0x1a40028, 0xc42016e380, 0x1)
	/usr/local/go/src/bytes/buffer.go:179 +0x160
io.copyBuffer(0x165bbc0, 0xc42016e380, 0x165cc00, 0xc4204d4018, 0x0, 0x0, 0x0, 0x1, 0x100000000000000, 0xc42031edd0)
	/usr/local/go/src/io/io.go:384 +0x2cb
io.Copy(0x165bbc0, 0xc42016e380, 0x165cc00, 0xc4204d4018, 0xc42019e4b0, 0x13b2842, 0x200001)
	/usr/local/go/src/io/io.go:360 +0x68
os/exec.(*Cmd).writerDescriptor.func1(0x180001, 0x0)
	/usr/local/go/src/os/exec/exec.go:254 +0x4d
os/exec.(*Cmd).Start.func1(0xc4202c4160, 0xc4201e4220)
	/usr/local/go/src/os/exec/exec.go:371 +0x27
created by os/exec.(*Cmd).Start
	/usr/local/go/src/os/exec/exec.go:372 +0x4e4

goroutine 9 [syscall]:
syscall.Syscall(0x3, 0x10, 0xc4203ba000, 0x200, 0x1766000, 0x19, 0xc4203ba000)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:16 +0x5
syscall.read(0x10, 0xc4203ba000, 0x200, 0x200, 0xc420484c00, 0x1766000, 0x0)
	/usr/local/go/src/syscall/zsyscall_darwin_amd64.go:973 +0x55
syscall.Read(0x10, 0xc4203ba000, 0x200, 0x200, 0x102990f, 0x14b3ed8, 0xc4204f7dc0)
	/usr/local/go/src/syscall/syscall_unix.go:162 +0x49
os.(*File).read(0xc42024a018, 0xc4203ba000, 0x200, 0x200, 0x10676ab, 0x13fd9a0, 0x200)
	/usr/local/go/src/os/file_unix.go:165 +0x6a
os.(*File).Read(0xc42024a018, 0xc4203ba000, 0x200, 0x200, 0x1051c50, 0xc420001d40, 0xc4204f7e60)
	/usr/local/go/src/os/file.go:101 +0x76
bytes.(*Buffer).ReadFrom(0xc420162230, 0x165cc00, 0xc42024a018, 0x1a40028, 0xc420162230, 0x169e601)
	/usr/local/go/src/bytes/buffer.go:179 +0x160
io.copyBuffer(0x165bbc0, 0xc420162230, 0x165cc00, 0xc42024a018, 0x0, 0x0, 0x0, 0x1, 0x100000000000000, 0xc42031ed00)
	/usr/local/go/src/io/io.go:384 +0x2cb
io.Copy(0x165bbc0, 0xc420162230, 0x165cc00, 0xc42024a018, 0xc42019e4b0, 0x13b2842, 0x200001)
	/usr/local/go/src/io/io.go:360 +0x68
os/exec.(*Cmd).writerDescriptor.func1(0x180001, 0x0)
	/usr/local/go/src/os/exec/exec.go:254 +0x4d
os/exec.(*Cmd).Start.func1(0xc420110160, 0xc42035e620)
	/usr/local/go/src/os/exec/exec.go:371 +0x27
created by os/exec.(*Cmd).Start
	/usr/local/go/src/os/exec/exec.go:372 +0x4e4

goroutine 98 [syscall]:
syscall.Syscall(0x3, 0xc, 0xc4201aa200, 0x200, 0x2, 0x2, 0xc42019e567)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:16 +0x5
syscall.read(0xc, 0xc4201aa200, 0x200, 0x200, 0xc4204db000, 0x17664b0, 0x0)
	/usr/local/go/src/syscall/zsyscall_darwin_amd64.go:973 +0x55
syscall.Read(0xc, 0xc4201aa200, 0x200, 0x200, 0x102990f, 0x14b3ed8, 0xc42002fdc0)
	/usr/local/go/src/syscall/syscall_unix.go:162 +0x49
os.(*File).read(0xc42000e038, 0xc4201aa200, 0x200, 0x200, 0x10676ab, 0x13fd9a0, 0x200)
	/usr/local/go/src/os/file_unix.go:165 +0x6a
os.(*File).Read(0xc42000e038, 0xc4201aa200, 0x200, 0x200, 0xc420440e00, 0xc42002fe70, 0xc42002fe60)
	/usr/local/go/src/os/file.go:101 +0x76
bytes.(*Buffer).ReadFrom(0xc42010e850, 0x165cc00, 0xc42000e038, 0x1a40028, 0xc42010e850, 0x1)
	/usr/local/go/src/bytes/buffer.go:179 +0x160
io.copyBuffer(0x165bbc0, 0xc42010e850, 0x165cc00, 0xc42000e038, 0x0, 0x0, 0x0, 0x1, 0x100000000000000, 0xc42031eb60)
	/usr/local/go/src/io/io.go:384 +0x2cb
io.Copy(0x165bbc0, 0xc42010e850, 0x165cc00, 0xc42000e038, 0xc42019e4b0, 0x13b2842, 0x200001)
	/usr/local/go/src/io/io.go:360 +0x68
os/exec.(*Cmd).writerDescriptor.func1(0x180001, 0x0)
	/usr/local/go/src/os/exec/exec.go:254 +0x4d
os/exec.(*Cmd).Start.func1(0xc420414160, 0xc42000c580)
	/usr/local/go/src/os/exec/exec.go:371 +0x27
created by os/exec.(*Cmd).Start
	/usr/local/go/src/os/exec/exec.go:372 +0x4e4

goroutine 83 [syscall]:
syscall.Syscall(0x3, 0x18, 0xc42027c400, 0x200, 0xc42027c400, 0x200, 0xc42019e570)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:16 +0x5
syscall.read(0x18, 0xc42027c400, 0x200, 0x200, 0xc420262400, 0x1766e10, 0x0)
	/usr/local/go/src/syscall/zsyscall_darwin_amd64.go:973 +0x55
syscall.Read(0x18, 0xc42027c400, 0x200, 0x200, 0x102990f, 0x14b3ed8, 0xc4204f9dc0)
	/usr/local/go/src/syscall/syscall_unix.go:162 +0x49
os.(*File).read(0xc420454018, 0xc42027c400, 0x200, 0x200, 0x10676ab, 0x13fd9a0, 0x200)
	/usr/local/go/src/os/file_unix.go:165 +0x6a
os.(*File).Read(0xc420454018, 0xc42027c400, 0x200, 0x200, 0xc420440e00, 0xc4204f9e70, 0xc4204f9e60)
	/usr/local/go/src/os/file.go:101 +0x76
bytes.(*Buffer).ReadFrom(0xc420186460, 0x165cc00, 0xc420454018, 0x1a40028, 0xc420186460, 0x1)
	/usr/local/go/src/bytes/buffer.go:179 +0x160
io.copyBuffer(0x165bbc0, 0xc420186460, 0x165cc00, 0xc420454018, 0x0, 0x0, 0x0, 0x1, 0x100000000000000, 0xc42031f040)
	/usr/local/go/src/io/io.go:384 +0x2cb
io.Copy(0x165bbc0, 0xc420186460, 0x165cc00, 0xc420454018, 0xc42019e4b0, 0x13b2842, 0x200001)
	/usr/local/go/src/io/io.go:360 +0x68
os/exec.(*Cmd).writerDescriptor.func1(0x180001, 0x0)
	/usr/local/go/src/os/exec/exec.go:254 +0x4d
os/exec.(*Cmd).Start.func1(0xc420430160, 0xc420206200)
	/usr/local/go/src/os/exec/exec.go:371 +0x27
created by os/exec.(*Cmd).Start
	/usr/local/go/src/os/exec/exec.go:372 +0x4e4
go build github.com/highwire/binsvc/vendor/github.com/jimrobinson/trace: /usr/local/go/pkg/tool/darwin_amd64/compile: exit status 2
signal 28 received on thread with no signal stack
fatal error: non-Go code disabled sigaltstack

runtime stack:
runtime.throw(0x149aa79, 0x20)
	/usr/local/go/src/runtime/panic.go:596 +0x95
runtime.noSignalStack(0x1c)
	/usr/local/go/src/runtime/signal_unix.go:455 +0x94
runtime.sigtrampgo(0x657669740000001c, 0xc420506d10, 0xc420506d78)
	/usr/local/go/src/runtime/signal_unix.go:238 +0x2d8
runtime.sigtramp(0x2065726120657365, 0x63696e756d6d6f63, 0x2079622064657461, 0x200000200000085, 0xc4202301e0, 0x10a50, 0xc420128000, 0xc420506e30, 0x1, 0x0, ...)
	/usr/local/go/src/runtime/sys_darwin_amd64.s:240 +0x28

goroutine 17 [syscall, locked to thread]:
runtime.goexit()
	/usr/local/go/src/runtime/asm_amd64.s:2197 +0x1 fp=0xc42003efe8 sp=0xc42003efe0

goroutine 1 [semacquire]:
sync.runtime_Semacquire(0xc42025437c)
	/usr/local/go/src/runtime/sema.go:47 +0x34
sync.(*WaitGroup).Wait(0xc420254370)
	/usr/local/go/src/sync/waitgroup.go:131 +0x7a
main.(*builder).do(0xc420136380, 0xc4202dad00)
	/usr/local/go/src/cmd/go/build.go:1370 +0x4be
main.runBuild(0x168d5e0, 0xc42000c270, 0x0, 0x0)
	/usr/local/go/src/cmd/go/build.go:526 +0x32b
main.main()
	/usr/local/go/src/cmd/go/main.go:184 +0x69d

goroutine 5 [syscall]:
os/signal.signal_recv(0x0)
	/usr/local/go/src/runtime/sigqueue.go:116 +0xff
os/signal.loop()
	/usr/local/go/src/os/signal/signal_unix.go:22 +0x22
created by os/signal.init.1
	/usr/local/go/src/os/signal/signal_unix.go:28 +0x41

goroutine 82 [syscall]:
syscall.Syscall(0x3, 0x8, 0xc42020e200, 0x200, 0xc42020e200, 0x200, 0x1474640)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:16 +0x5
syscall.read(0x8, 0xc42020e200, 0x200, 0x200, 0xc420262000, 0x1766960, 0x0)
	/usr/local/go/src/syscall/zsyscall_darwin_amd64.go:973 +0x55
syscall.Read(0x8, 0xc42020e200, 0x200, 0x200, 0x102990f, 0x14b3ed8, 0xc42002e5c0)
	/usr/local/go/src/syscall/syscall_unix.go:162 +0x49
os.(*File).read(0xc420124048, 0xc42020e200, 0x200, 0x200, 0x10676ab, 0x13fd9a0, 0x200)
	/usr/local/go/src/os/file_unix.go:165 +0x6a
os.(*File).Read(0xc420124048, 0xc42020e200, 0x200, 0x200, 0x148fa66, 0x9, 0xc42002e660)
	/usr/local/go/src/os/file.go:101 +0x76
bytes.(*Buffer).ReadFrom(0xc4200b65b0, 0x165cc00, 0xc420124048, 0x1a40028, 0xc4200b65b0, 0x1050001)
	/usr/local/go/src/bytes/buffer.go:179 +0x160
io.copyBuffer(0x165bbc0, 0xc4200b65b0, 0x165cc00, 0xc420124048, 0x0, 0x0, 0x0, 0xc4200984e0, 0xc42002e7a0, 0x100644c)
	/usr/local/go/src/io/io.go:384 +0x2cb
io.Copy(0x165bbc0, 0xc4200b65b0, 0x165cc00, 0xc420124048, 0x80, 0xc42002e7a0, 0x0)
	/usr/local/go/src/io/io.go:360 +0x68
os/exec.(*Cmd).writerDescriptor.func1(0x0, 0xc42002e7c8)
	/usr/local/go/src/os/exec/exec.go:254 +0x4d
os/exec.(*Cmd).Start.func1(0xc4201e62c0, 0xc4200fccc0)
	/usr/local/go/src/os/exec/exec.go:371 +0x27
created by os/exec.(*Cmd).Start
	/usr/local/go/src/os/exec/exec.go:372 +0x4e4

goroutine 84 [syscall]:
syscall.Syscall(0x3, 0xd, 0xc420441200, 0x200, 0xc420441200, 0x200, 0x0)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:16 +0x5
syscall.read(0xd, 0xc420441200, 0x200, 0x200, 0xc4203c3c00, 0x17672c0, 0x0)
	/usr/local/go/src/syscall/zsyscall_darwin_amd64.go:973 +0x55
syscall.Read(0xd, 0xc420441200, 0x200, 0x200, 0x102990f, 0x14b3ed8, 0xc42002edc0)
	/usr/local/go/src/syscall/syscall_unix.go:162 +0x49
os.(*File).read(0xc420454030, 0xc420441200, 0x200, 0x200, 0x10676ab, 0x13fd9a0, 0x200)
	/usr/local/go/src/os/file_unix.go:165 +0x6a
os.(*File).Read(0xc420454030, 0xc420441200, 0x200, 0x200, 0x10328be, 0xc4200996c0, 0xc42002ee60)
	/usr/local/go/src/os/file.go:101 +0x76
bytes.(*Buffer).ReadFrom(0xc4202ae770, 0x165cc00, 0xc420454030, 0x1a40028, 0xc4202ae770, 0xc42002ef01)
	/usr/local/go/src/bytes/buffer.go:179 +0x160
io.copyBuffer(0x165bbc0, 0xc4202ae770, 0x165cc00, 0xc420454030, 0x0, 0x0, 0x0, 0xc4204d6178, 0x0, 0x0)
	/usr/local/go/src/io/io.go:384 +0x2cb
io.Copy(0x165bbc0, 0xc4202ae770, 0x165cc00, 0xc420454030, 0x13f9ae0, 0xc4204d6120, 0xc42002efb0)
	/usr/local/go/src/io/io.go:360 +0x68
os/exec.(*Cmd).writerDescriptor.func1(0x13f9ae0, 0xc4204d6120)
	/usr/local/go/src/os/exec/exec.go:254 +0x4d
os/exec.(*Cmd).Start.func1(0xc42037c420, 0xc420206500)
	/usr/local/go/src/os/exec/exec.go:371 +0x27
created by os/exec.(*Cmd).Start
	/usr/local/go/src/os/exec/exec.go:372 +0x4e4

goroutine 34 [syscall]:
syscall.Syscall6(0xad, 0x1, 0x10a45, 0xc420503118, 0x24, 0x0, 0x0, 0x17664b0, 0x0, 0xc4200fcc80)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:41 +0x5
os.(*Process).blockUntilWaitable(0xc4204565a0, 0xc4201e62c0, 0xc4200fccc0, 0x16)
	/usr/local/go/src/os/wait_waitid.go:28 +0xa5
os.(*Process).wait(0xc4204565a0, 0xc4203c2800, 0xc420124060, 0xc4201e6160)
	/usr/local/go/src/os/exec_unix.go:22 +0x4d
os.(*Process).Wait(0xc4204565a0, 0x0, 0x0, 0x14b4810)
	/usr/local/go/src/os/exec.go:115 +0x2b
os/exec.(*Cmd).Wait(0xc4201e62c0, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:435 +0x62
os/exec.(*Cmd).Run(0xc4201e62c0, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:280 +0x5c
main.(*builder).runOut(0xc420136380, 0xc42024c0c0, 0x56, 0xc4201cd6c0, 0x3a, 0x0, 0x0, 0x0, 0xc4201e6000, 0x13, ...)
	/usr/local/go/src/cmd/go/build.go:2141 +0x42b
main.gcToolchain.gc(0xc420136380, 0xc4203ccd80, 0xc420115900, 0x7f, 0xc420446360, 0x83, 0xc4201fd401, 0xc4200fca60, 0x2, 0x2, ...)
	/usr/local/go/src/cmd/go/build.go:2401 +0xfc1
main.(*gcToolchain).gc(0x16b1380, 0xc420136380, 0xc4203ccd80, 0xc420115900, 0x7f, 0xc420446360, 0x83, 0x1, 0xc4200fca60, 0x2, ...)
	<autogenerated>:5 +0x105
main.(*builder).build(0xc420136380, 0xc42031e9c0, 0x0, 0x0)
	/usr/local/go/src/cmd/go/build.go:1537 +0xadc
main.(*builder).do.func1(0xc42031e9c0)
	/usr/local/go/src/cmd/go/build.go:1302 +0x7d
main.(*builder).do.func2(0xc420254370, 0xc420136380, 0xc42013df20)
	/usr/local/go/src/cmd/go/build.go:1361 +0x145
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 35 [syscall]:
syscall.Syscall6(0xad, 0x1, 0x10a4e, 0xc420523118, 0x24, 0x0, 0x0, 0x1767c20, 0x0, 0xc4202baa20)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:41 +0x5
os.(*Process).blockUntilWaitable(0xc4204329c0, 0xc42037c6e0, 0xc4202baa60, 0x10)
	/usr/local/go/src/os/wait_waitid.go:28 +0xa5
os.(*Process).wait(0xc4204329c0, 0xc420250800, 0xc4202b6078, 0xc4202fce00)
	/usr/local/go/src/os/exec_unix.go:22 +0x4d
os.(*Process).Wait(0xc4204329c0, 0x0, 0x0, 0x14b4810)
	/usr/local/go/src/os/exec.go:115 +0x2b
os/exec.(*Cmd).Wait(0xc42037c6e0, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:435 +0x62
os/exec.(*Cmd).Run(0xc42037c6e0, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:280 +0x5c
main.(*builder).runOut(0xc420136380, 0xc42010fce0, 0x63, 0xc420123900, 0x47, 0x0, 0x0, 0x0, 0xc42037c580, 0xd, ...)
	/usr/local/go/src/cmd/go/build.go:2141 +0x42b
main.gcToolchain.gc(0xc420136380, 0xc420236d80, 0xc420446fc0, 0x8c, 0xc420446f30, 0x90, 0xc4201fd400, 0xc420244580, 0x2, 0x2, ...)
	/usr/local/go/src/cmd/go/build.go:2401 +0xfc1
main.(*gcToolchain).gc(0x16b1380, 0xc420136380, 0xc420236d80, 0xc420446fc0, 0x8c, 0xc420446f30, 0x90, 0x0, 0xc420244580, 0x2, ...)
	<autogenerated>:5 +0x105
main.(*builder).build(0xc420136380, 0xc42031f790, 0x0, 0x0)
	/usr/local/go/src/cmd/go/build.go:1537 +0xadc
main.(*builder).do.func1(0xc42031f790)
	/usr/local/go/src/cmd/go/build.go:1302 +0x7d
main.(*builder).do.func2(0xc420254370, 0xc420136380, 0xc42013df20)
	/usr/local/go/src/cmd/go/build.go:1361 +0x145
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 36 [syscall]:
syscall.Syscall6(0xad, 0x1, 0x10a4f, 0xc420513118, 0x24, 0x0, 0x0, 0x17664b0, 0x0, 0xc4202064c0)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:41 +0x5
os.(*Process).blockUntilWaitable(0xc420456840, 0xc42037c420, 0xc420206500, 0x10)
	/usr/local/go/src/os/wait_waitid.go:28 +0xa5
os.(*Process).wait(0xc420456840, 0xc4204b1c00, 0xc420454048, 0xc4202fcc00)
	/usr/local/go/src/os/exec_unix.go:22 +0x4d
os.(*Process).Wait(0xc420456840, 0x0, 0x0, 0x14b4810)
	/usr/local/go/src/os/exec.go:115 +0x2b
os/exec.(*Cmd).Wait(0xc42037c420, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:435 +0x62
os/exec.(*Cmd).Run(0xc42037c420, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:280 +0x5c
main.(*builder).runOut(0xc420136380, 0xc4202f6900, 0x5f, 0xc42042fdb0, 0x43, 0x0, 0x0, 0x0, 0xc42037c2c0, 0xd, ...)
	/usr/local/go/src/cmd/go/build.go:2141 +0x42b
main.gcToolchain.gc(0xc420136380, 0xc42014f200, 0xc420446c60, 0x88, 0xc420446bd0, 0x8c, 0xc4201fd400, 0xc420244440, 0x2, 0x2, ...)
	/usr/local/go/src/cmd/go/build.go:2401 +0xfc1
main.(*gcToolchain).gc(0x16b1380, 0xc420136380, 0xc42014f200, 0xc420446c60, 0x88, 0xc420446bd0, 0x8c, 0x0, 0xc420244440, 0x2, ...)
	<autogenerated>:5 +0x105
main.(*builder).build(0xc420136380, 0xc42031f5f0, 0x0, 0x0)
	/usr/local/go/src/cmd/go/build.go:1537 +0xadc
main.(*builder).do.func1(0xc42031f5f0)
	/usr/local/go/src/cmd/go/build.go:1302 +0x7d
main.(*builder).do.func2(0xc420254370, 0xc420136380, 0xc42013df20)
	/usr/local/go/src/cmd/go/build.go:1361 +0x145
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 37 [syscall]:
syscall.Syscall6(0xad, 0x1, 0x10a4d, 0xc42052f118, 0x24, 0x0, 0x0, 0x17680d0, 0x0, 0xc4202ba740)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:41 +0x5
os.(*Process).blockUntilWaitable(0xc42035ca50, 0xc420302580, 0xc4202ba780, 0x12)
	/usr/local/go/src/os/wait_waitid.go:28 +0xa5
os.(*Process).wait(0xc42035ca50, 0xc4204dd800, 0xc4202b6060, 0xc4203be000)
	/usr/local/go/src/os/exec_unix.go:22 +0x4d
os.(*Process).Wait(0xc42035ca50, 0x0, 0x0, 0x14b4810)
	/usr/local/go/src/os/exec.go:115 +0x2b
os/exec.(*Cmd).Wait(0xc420302580, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:435 +0x62
os/exec.(*Cmd).Run(0xc420302580, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:280 +0x5c
main.(*builder).runOut(0xc420136380, 0xc42020c620, 0x63, 0xc42042e3c0, 0x47, 0x0, 0x0, 0x0, 0xc420302420, 0xf, ...)
	/usr/local/go/src/cmd/go/build.go:2141 +0x42b
main.gcToolchain.gc(0xc420136380, 0xc4203cd680, 0xc420446ab0, 0x8c, 0xc420446a20, 0x90, 0xc4201fd400, 0xc4202ba600, 0x2, 0x2, ...)
	/usr/local/go/src/cmd/go/build.go:2401 +0xfc1
main.(*gcToolchain).gc(0x16b1380, 0xc420136380, 0xc4203cd680, 0xc420446ab0, 0x8c, 0xc420446a20, 0x90, 0x0, 0xc4202ba600, 0x2, ...)
	<autogenerated>:5 +0x105
main.(*builder).build(0xc420136380, 0xc42031f450, 0x0, 0x0)
	/usr/local/go/src/cmd/go/build.go:1537 +0xadc
main.(*builder).do.func1(0xc42031f450)
	/usr/local/go/src/cmd/go/build.go:1302 +0x7d
main.(*builder).do.func2(0xc420254370, 0xc420136380, 0xc42013df20)
	/usr/local/go/src/cmd/go/build.go:1361 +0x145
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 38 [syscall]:
syscall.Syscall6(0xad, 0x1, 0x10a48, 0xc420527118, 0x24, 0x0, 0x0, 0x1767770, 0x0, 0xc4201e41a0)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:41 +0x5
os.(*Process).blockUntilWaitable(0xc4203ca8d0, 0xc4202c4160, 0xc4201e4220, 0x12)
	/usr/local/go/src/os/wait_waitid.go:28 +0xa5
os.(*Process).wait(0xc4203ca8d0, 0xc420177000, 0xc4204d4030, 0xc420096240)
	/usr/local/go/src/os/exec_unix.go:22 +0x4d
os.(*Process).Wait(0xc4203ca8d0, 0x0, 0x0, 0x14b4810)
	/usr/local/go/src/os/exec.go:115 +0x2b
os/exec.(*Cmd).Wait(0xc4202c4160, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:435 +0x62
os/exec.(*Cmd).Run(0xc4202c4160, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:280 +0x5c
main.(*builder).runOut(0xc420136380, 0xc4203eddb0, 0x4d, 0xc420120800, 0x31, 0x0, 0x0, 0x0, 0xc4202c4000, 0xe, ...)
	/usr/local/go/src/cmd/go/build.go:2141 +0x42b
main.gcToolchain.gc(0xc420136380, 0xc4204b5680, 0xc420115b80, 0x76, 0xc420115b00, 0x7a, 0xc4201fd400, 0xc4201e4040, 0x2, 0x2, ...)
	/usr/local/go/src/cmd/go/build.go:2401 +0xfc1
main.(*gcToolchain).gc(0x16b1380, 0xc420136380, 0xc4204b5680, 0xc420115b80, 0x76, 0xc420115b00, 0x7a, 0x0, 0xc4201e4040, 0x2, ...)
	<autogenerated>:5 +0x105
main.(*builder).build(0xc420136380, 0xc42031edd0, 0x0, 0x0)
	/usr/local/go/src/cmd/go/build.go:1537 +0xadc
main.(*builder).do.func1(0xc42031edd0)
	/usr/local/go/src/cmd/go/build.go:1302 +0x7d
main.(*builder).do.func2(0xc420254370, 0xc420136380, 0xc42013df20)
	/usr/local/go/src/cmd/go/build.go:1361 +0x145
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 39 [syscall]:
syscall.Syscall6(0xad, 0x1, 0x10a4b, 0xc42052b118, 0x24, 0x0, 0x0, 0x17680d0, 0x0, 0xc4202ba1e0)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:41 +0x5
os.(*Process).blockUntilWaitable(0xc42035c3f0, 0xc4203022c0, 0xc4202ba260, 0x1a)
	/usr/local/go/src/os/wait_waitid.go:28 +0xa5
os.(*Process).wait(0xc42035c3f0, 0xc4204dc800, 0xc4202b6030, 0xc4200981a0)
	/usr/local/go/src/os/exec_unix.go:22 +0x4d
os.(*Process).Wait(0xc42035c3f0, 0x0, 0x0, 0x14b4810)
	/usr/local/go/src/os/exec.go:115 +0x2b
os/exec.(*Cmd).Wait(0xc4203022c0, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:435 +0x62
os/exec.(*Cmd).Run(0xc4203022c0, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:280 +0x5c
main.(*builder).runOut(0xc420136380, 0xc420113b00, 0x54, 0xc420247900, 0x38, 0x0, 0x0, 0x0, 0xc4202382c0, 0x17, ...)
	/usr/local/go/src/cmd/go/build.go:2141 +0x42b
main.gcToolchain.gc(0xc420136380, 0xc42027f680, 0xc4201a6000, 0x7d, 0xc420446750, 0x81, 0xc4201fd400, 0xc4202ba020, 0x2, 0x2, ...)
	/usr/local/go/src/cmd/go/build.go:2401 +0xfc1
main.(*gcToolchain).gc(0x16b1380, 0xc420136380, 0xc42027f680, 0xc4201a6000, 0x7d, 0xc420446750, 0x81, 0x0, 0xc4202ba020, 0x2, ...)
	<autogenerated>:5 +0x105
main.(*builder).build(0xc420136380, 0xc42031f040, 0x0, 0x0)
	/usr/local/go/src/cmd/go/build.go:1537 +0xadc
main.(*builder).do.func1(0xc42031f040)
	/usr/local/go/src/cmd/go/build.go:1302 +0x7d
main.(*builder).do.func2(0xc420254370, 0xc420136380, 0xc42013df20)
	/usr/local/go/src/cmd/go/build.go:1361 +0x145
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 40 [running]:
	goroutine running on other thread; stack unavailable
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 41 [syscall]:
syscall.Syscall6(0xad, 0x1, 0x10a46, 0xc420517118, 0x24, 0x0, 0x0, 0x1766e10, 0x0, 0xc42000c520)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:41 +0x5
os.(*Process).blockUntilWaitable(0xc420270c60, 0xc420414160, 0xc42000c580, 0x14)
	/usr/local/go/src/os/wait_waitid.go:28 +0xa5
os.(*Process).wait(0xc420270c60, 0xc420469400, 0xc42000e050, 0xc4200ae000)
	/usr/local/go/src/os/exec_unix.go:22 +0x4d
os.(*Process).Wait(0xc420270c60, 0x0, 0x0, 0x14b4810)
	/usr/local/go/src/os/exec.go:115 +0x2b
os/exec.(*Cmd).Wait(0xc420414160, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:435 +0x62
os/exec.(*Cmd).Run(0xc420414160, 0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:280 +0x5c
main.(*builder).runOut(0xc420136380, 0xc420391b60, 0x5d, 0xc420353680, 0x41, 0x0, 0x0, 0x0, 0xc420414000, 0x10, ...)
	/usr/local/go/src/cmd/go/build.go:2141 +0x42b
main.gcToolchain.gc(0xc420136380, 0xc4203cdb00, 0xc420446510, 0x86, 0xc420446480, 0x8a, 0xc4201fd400, 0xc42000c1e0, 0x2, 0x2, ...)
	/usr/local/go/src/cmd/go/build.go:2401 +0xfc1
main.(*gcToolchain).gc(0x16b1380, 0xc420136380, 0xc4203cdb00, 0xc420446510, 0x86, 0xc420446480, 0x8a, 0x0, 0xc42000c1e0, 0x2, ...)
	<autogenerated>:5 +0x105
main.(*builder).build(0xc420136380, 0xc42031eb60, 0x0, 0x0)
	/usr/local/go/src/cmd/go/build.go:1537 +0xadc
main.(*builder).do.func1(0xc42031eb60)
	/usr/local/go/src/cmd/go/build.go:1302 +0x7d
main.(*builder).do.func2(0xc420254370, 0xc420136380, 0xc42013df20)
	/usr/local/go/src/cmd/go/build.go:1361 +0x145
created by main.(*builder).do
	/usr/local/go/src/cmd/go/build.go:1367 +0x495

goroutine 51 [syscall]:
syscall.Syscall(0x3, 0x20, 0xc420406200, 0x200, 0x0, 0x0, 0x0)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:16 +0x5
syscall.read(0x20, 0xc420406200, 0x200, 0x200, 0xc4204dcc00, 0x17680d0, 0x0)
	/usr/local/go/src/syscall/zsyscall_darwin_amd64.go:973 +0x55
syscall.Read(0x20, 0xc420406200, 0x200, 0x200, 0x102990f, 0x14b3ed8, 0xc4204f3dc0)
	/usr/local/go/src/syscall/syscall_unix.go:162 +0x49
os.(*File).read(0xc4202b6018, 0xc420406200, 0x200, 0x200, 0x10676ab, 0x13fd9a0, 0x200)
	/usr/local/go/src/os/file_unix.go:165 +0x6a
os.(*File).Read(0xc4202b6018, 0xc420406200, 0x200, 0x200, 0x0, 0x0, 0xc4204f3e60)
	/usr/local/go/src/os/file.go:101 +0x76
bytes.(*Buffer).ReadFrom(0xc42020c380, 0x165cc00, 0xc4202b6018, 0x1a40028, 0xc42020c380, 0x1)
	/usr/local/go/src/bytes/buffer.go:179 +0x160
io.copyBuffer(0x165bbc0, 0xc42020c380, 0x165cc00, 0xc4202b6018, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
	/usr/local/go/src/io/io.go:384 +0x2cb
io.Copy(0x165bbc0, 0xc42020c380, 0x165cc00, 0xc4202b6018, 0x0, 0x0, 0x0)
	/usr/local/go/src/io/io.go:360 +0x68
os/exec.(*Cmd).writerDescriptor.func1(0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:254 +0x4d
os/exec.(*Cmd).Start.func1(0xc4203022c0, 0xc4202ba260)
	/usr/local/go/src/os/exec/exec.go:371 +0x27
created by os/exec.(*Cmd).Start
	/usr/local/go/src/os/exec/exec.go:372 +0x4e4

goroutine 66 [syscall]:
syscall.Syscall(0x3, 0x14, 0xc42027c200, 0x200, 0xc42027c200, 0x200, 0xc42019e56a)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:16 +0x5
syscall.read(0x14, 0xc42027c200, 0x200, 0x200, 0xc420129000, 0x1766e10, 0x0)
	/usr/local/go/src/syscall/zsyscall_darwin_amd64.go:973 +0x55
syscall.Read(0x14, 0xc42027c200, 0x200, 0x200, 0x102990f, 0x14b3ed8, 0xc4204f95c0)
	/usr/local/go/src/syscall/syscall_unix.go:162 +0x49
os.(*File).read(0xc4204d4018, 0xc42027c200, 0x200, 0x200, 0x10676ab, 0x13fd9a0, 0x200)
	/usr/local/go/src/os/file_unix.go:165 +0x6a
os.(*File).Read(0xc4204d4018, 0xc42027c200, 0x200, 0x200, 0xc420440e00, 0xc4204f9670, 0xc4204f9660)
	/usr/local/go/src/os/file.go:101 +0x76
bytes.(*Buffer).ReadFrom(0xc42016e380, 0x165cc00, 0xc4204d4018, 0x1a40028, 0xc42016e380, 0x1)
	/usr/local/go/src/bytes/buffer.go:179 +0x160
io.copyBuffer(0x165bbc0, 0xc42016e380, 0x165cc00, 0xc4204d4018, 0x0, 0x0, 0x0, 0x1, 0x100000000000000, 0xc42031edd0)
	/usr/local/go/src/io/io.go:384 +0x2cb
io.Copy(0x165bbc0, 0xc42016e380, 0x165cc00, 0xc4204d4018, 0xc42019e4b0, 0x13b2842, 0x200001)
	/usr/local/go/src/io/io.go:360 +0x68
os/exec.(*Cmd).writerDescriptor.func1(0x180001, 0x0)
	/usr/local/go/src/os/exec/exec.go:254 +0x4d
os/exec.(*Cmd).Start.func1(0xc4202c4160, 0xc4201e4220)
	/usr/local/go/src/os/exec/exec.go:371 +0x27
created by os/exec.(*Cmd).Start
	/usr/local/go/src/os/exec/exec.go:372 +0x4e4

goroutine 114 [syscall]:
syscall.Syscall(0x3, 0x11, 0xc42041a200, 0x200, 0xc42041a200, 0x200, 0x0)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:16 +0x5
syscall.read(0x11, 0xc42041a200, 0x200, 0x200, 0xc420262400, 0x1767770, 0x0)
	/usr/local/go/src/syscall/zsyscall_darwin_amd64.go:973 +0x55
syscall.Read(0x11, 0xc42041a200, 0x200, 0x200, 0x102990f, 0x14b3ed8, 0xc4204f7dc0)
	/usr/local/go/src/syscall/syscall_unix.go:162 +0x49
os.(*File).read(0xc4202b6060, 0xc42041a200, 0x200, 0x200, 0x10676ab, 0x13fd9a0, 0x200)
	/usr/local/go/src/os/file_unix.go:165 +0x6a
os.(*File).Read(0xc4202b6060, 0xc42041a200, 0x200, 0x200, 0x10328be, 0xc42030a000, 0xc4204f7e60)
	/usr/local/go/src/os/file.go:101 +0x76
bytes.(*Buffer).ReadFrom(0xc4202aea10, 0x165cc00, 0xc4202b6060, 0x1a40028, 0xc4202aea10, 0xc4204f7f01)
	/usr/local/go/src/bytes/buffer.go:179 +0x160
io.copyBuffer(0x165bbc0, 0xc4202aea10, 0x165cc00, 0xc4202b6060, 0x0, 0x0, 0x0, 0xc4204d61d8, 0x0, 0x0)
	/usr/local/go/src/io/io.go:384 +0x2cb
io.Copy(0x165bbc0, 0xc4202aea10, 0x165cc00, 0xc4202b6060, 0x13f9ae0, 0xc4204d6180, 0xc4204f7fb0)
	/usr/local/go/src/io/io.go:360 +0x68
os/exec.(*Cmd).writerDescriptor.func1(0x13f9ae0, 0xc4204d6180)
	/usr/local/go/src/os/exec/exec.go:254 +0x4d
os/exec.(*Cmd).Start.func1(0xc42037c6e0, 0xc4202baa60)
	/usr/local/go/src/os/exec/exec.go:371 +0x27
created by os/exec.(*Cmd).Start
	/usr/local/go/src/os/exec/exec.go:372 +0x4e4

goroutine 98 [syscall]:
syscall.Syscall(0x3, 0xc, 0xc4201aa200, 0x200, 0x2, 0x2, 0xc42019e567)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:16 +0x5
syscall.read(0xc, 0xc4201aa200, 0x200, 0x200, 0xc4204db000, 0x17664b0, 0x0)
	/usr/local/go/src/syscall/zsyscall_darwin_amd64.go:973 +0x55
syscall.Read(0xc, 0xc4201aa200, 0x200, 0x200, 0x102990f, 0x14b3ed8, 0xc42002fdc0)
	/usr/local/go/src/syscall/syscall_unix.go:162 +0x49
os.(*File).read(0xc42000e038, 0xc4201aa200, 0x200, 0x200, 0x10676ab, 0x13fd9a0, 0x200)
	/usr/local/go/src/os/file_unix.go:165 +0x6a
os.(*File).Read(0xc42000e038, 0xc4201aa200, 0x200, 0x200, 0xc420440e00, 0xc42002fe70, 0xc42002fe60)
	/usr/local/go/src/os/file.go:101 +0x76
bytes.(*Buffer).ReadFrom(0xc42010e850, 0x165cc00, 0xc42000e038, 0x1a40028, 0xc42010e850, 0x1)
	/usr/local/go/src/bytes/buffer.go:179 +0x160
io.copyBuffer(0x165bbc0, 0xc42010e850, 0x165cc00, 0xc42000e038, 0x0, 0x0, 0x0, 0x1, 0x100000000000000, 0xc42031eb60)
	/usr/local/go/src/io/io.go:384 +0x2cb
io.Copy(0x165bbc0, 0xc42010e850, 0x165cc00, 0xc42000e038, 0xc42019e4b0, 0x13b2842, 0x200001)
	/usr/local/go/src/io/io.go:360 +0x68
os/exec.(*Cmd).writerDescriptor.func1(0x180001, 0x0)
	/usr/local/go/src/os/exec/exec.go:254 +0x4d
os/exec.(*Cmd).Start.func1(0xc420414160, 0xc42000c580)
	/usr/local/go/src/os/exec/exec.go:371 +0x27
created by os/exec.(*Cmd).Start
	/usr/local/go/src/os/exec/exec.go:372 +0x4e4

goroutine 52 [syscall]:
syscall.Syscall(0x3, 0x9, 0xc42027cc00, 0x200, 0xc42027cc00, 0x200, 0x0)
	/usr/local/go/src/syscall/asm_darwin_amd64.s:16 +0x5
syscall.read(0x9, 0xc42027cc00, 0x200, 0x200, 0xc420476000, 0x1766e10, 0x0)
	/usr/local/go/src/syscall/zsyscall_darwin_amd64.go:973 +0x55
syscall.Read(0x9, 0xc42027cc00, 0x200, 0x200, 0x102990f, 0x14b3ed8, 0xc4204f45c0)
	/usr/local/go/src/syscall/syscall_unix.go:162 +0x49
os.(*File).read(0xc4202b6048, 0xc42027cc00, 0x200, 0x200, 0x10676ab, 0x13fd9a0, 0x200)
	/usr/local/go/src/os/file_unix.go:165 +0x6a
os.(*File).Read(0xc4202b6048, 0xc42027cc00, 0x200, 0x200, 0x0, 0x0, 0xc4204f4660)
	/usr/local/go/src/os/file.go:101 +0x76
bytes.(*Buffer).ReadFrom(0xc42020c930, 0x165cc00, 0xc4202b6048, 0x1a40028, 0xc42020c930, 0x1)
	/usr/local/go/src/bytes/buffer.go:179 +0x160
io.copyBuffer(0x165bbc0, 0xc42020c930, 0x165cc00, 0xc4202b6048, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
	/usr/local/go/src/io/io.go:384 +0x2cb
io.Copy(0x165bbc0, 0xc42020c930, 0x165cc00, 0xc4202b6048, 0x0, 0x0, 0x0)
	/usr/local/go/src/io/io.go:360 +0x68
os/exec.(*Cmd).writerDescriptor.func1(0x0, 0x0)
	/usr/local/go/src/os/exec/exec.go:254 +0x4d
os/exec.(*Cmd).Start.func1(0xc420302580, 0xc4202ba780)
	/usr/local/go/src/os/exec/exec.go:371 +0x27
created by os/exec.(*Cmd).Start
	/usr/local/go/src/os/exec/exec.go:372 +0x4e4
go build github.com/highwire/binsvc/vendor/github.com/phayes/errors: /usr/local/go/pkg/tool/darwin_amd64/compile: exit status 2

@ianlancetaylor ianlancetaylor changed the title from signal 28 received on thread with no signal stack to runtime: signal 28 received on thread with no signal stack Oct 18, 2017

@ianlancetaylor ianlancetaylor added this to the Go1.10 milestone Oct 18, 2017

@ianlancetaylor

This comment has been minimized.

Contributor

ianlancetaylor commented Oct 18, 2017

I don't see how this could happen, either on Go 1.8 or on tip. Before starting a new thread, we block all signals using pthread_sigmask. The new thread is expected to inherit that signal mask. The new thread installs a signal stack before it unblocks any signals.

If you can somehow get it to happen again, a dtrace of the system calls might help identify what is going wrong.

@jimrobinson

This comment has been minimized.

jimrobinson commented Oct 18, 2017

Talking out my tail end, I was wondering if resizing the terminal might send a signal to the running program (go build in this case), and if it arrived at just the right moment it might trigger a race condition. E.g., a SIGWINCH arriving at just the wrong moment.

@ianlancetaylor

This comment has been minimized.

Contributor

ianlancetaylor commented Oct 18, 2017

@jimrobinson I agree that it pretty much has to be a race condition as you describe. What I was trying to say in my last comment is that as far as I can see from reading the code such a race condition is impossible. Clearly I am wrong, but how?

@rsc rsc modified the milestones: Go1.10, Go1.11 Nov 22, 2017

@ianlancetaylor ianlancetaylor modified the milestones: Go1.11, Go1.12 Jul 10, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment