Skip to content

runtime: netbsd hangs during testing.Skipf #8574

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

Closed
josharian opened this issue Aug 22, 2014 · 7 comments
Closed

runtime: netbsd hangs during testing.Skipf #8574

josharian opened this issue Aug 22, 2014 · 7 comments

Comments

@josharian
Copy link
Contributor

http://build.golang.org/log/5fa874aa9491709d111a582f2d1deb08191888b0

The runtime/pprof test usually takes ~15s, and it only takes that long because each
tests run for a minimum length of time. The test or scheduler is thus likely hung at the
stack trace below.


SIGQUIT: quit
PC=0x43128a

goroutine 8 [running]:
runtime.lwp_park(0xc208045ae8, 0x0, 0xc20801e9b8, 0x0)
    /usr/local/go/src/pkg/runtime/sys_netbsd_amd64.s:55 +0x1a fp=0xc208045ac8 sp=0xc208045ac0
runtime.semasleep(0x138ccaaad512aae0)
    /usr/local/go/src/pkg/runtime/os_netbsd.c:105 +0x238 fp=0xc208045b00 sp=0xc208045ac8
notetsleep(0x64bdf0, 0x186a0, 0x138ccaaad512a8bb, 0x0)
    /usr/local/go/src/pkg/runtime/lock_sema.c:196 +0xe1 fp=0xc208045b20 sp=0xc208045b00
runtime.notetsleep(0x64bdf0, 0x186a0)
    /usr/local/go/src/pkg/runtime/lock_sema.c:245 +0xb8 fp=0xc208045b50 sp=0xc208045b20
runtime.stoptheworld()
    /usr/local/go/src/pkg/runtime/proc.c:541 +0x1b6 fp=0xc208045b80 sp=0xc208045b50
runtime.gomaxprocsfunc(0xc200000001)
    /usr/local/go/src/pkg/runtime/proc.c:2092 +0x9e fp=0xc208045ba0 sp=0xc208045b80
runtime.GOMAXPROCS(0x1, 0x0)
    /usr/local/go/src/pkg/runtime/runtime1.goc:11 +0x31 fp=0xc208045bb0 sp=0xc208045ba0
runtime.call16(0x5affe0, 0xc208036468, 0x1000000010)
    /usr/local/go/src/pkg/runtime/asm_amd64.s:416 +0x32 fp=0xc208045bc8 sp=0xc208045bb0
rundefer()
    /usr/local/go/src/pkg/runtime/panic.c:186 +0x67 fp=0xc208045bf0 sp=0xc208045bc8
runtime.Goexit()
    /usr/local/go/src/pkg/runtime/panic.c:560 +0x1a fp=0xc208045bf8 sp=0xc208045bf0
testing.(*common).SkipNow(0xc20800e120)
    /usr/local/go/src/pkg/testing/testing.go:373 +0x3c fp=0xc208045c08 sp=0xc208045bf8
testing.(*common).Skipf(0xc20800e120, 0x5a1d30, 0x31, 0xc208045d98, 0x1, 0x1)
    /usr/local/go/src/pkg/testing/testing.go:362 +0x89 fp=0xc208045c58 sp=0xc208045c08
runtime/pprof_test.testCPUProfile(0xc20800e120, 0xc208045f40, 0x2, 0x2, 0xc208045f18)
    /tmp/gobuilder/netbsd-amd64-bsiegert-f05a93afebee/go/src/pkg/runtime/pprof/pprof_test.go:157 +0xb61 fp=0xc208045ed8 sp=0xc208045c58
runtime/pprof_test.TestCPUProfileMultithreaded(0xc20800e120)
    /tmp/gobuilder/netbsd-amd64-bsiegert-f05a93afebee/go/src/pkg/runtime/pprof/pprof_test.go:55 +0x121 fp=0xc208045f68 sp=0xc208045ed8
testing.tRunner(0xc20800e120, 0x646a38)
    /usr/local/go/src/pkg/testing/testing.go:427 +0x8b fp=0xc208045f98 sp=0xc208045f68
runtime.goexit()
    /usr/local/go/src/pkg/runtime/proc.c:1490 fp=0xc208045fa0 sp=0xc208045f98
created by testing.RunTests
    /usr/local/go/src/pkg/testing/testing.go:509 +0x8f7

goroutine 1 [chan receive]:
runtime.park(0x41ebc0, 0xc208032238, 0x64826c, 0xc)
    /usr/local/go/src/pkg/runtime/proc.c:1421 +0xa7 fp=0xc20801bbf0 sp=0xc20801bbe0
runtime.parkunlock(0xc208032238, 0x64826c, 0xc)
    /usr/local/go/src/pkg/runtime/proc.c:1437 +0x47 fp=0xc20801bc18 sp=0xc20801bbf0
chanrecv(0x5020c0, 0xc2080321e0, 0xc20801bde0, 0x445501, 0x0)
    /usr/local/go/src/pkg/runtime/chan.goc:301 +0x591 fp=0xc20801bc98 sp=0xc20801bc18
runtime.chanrecv1(0x5020c0, 0xc2080321e0, 0xc20801bde0)
    /usr/local/go/src/pkg/runtime/chan.goc:385 +0x38 fp=0xc20801bcc8 sp=0xc20801bc98
testing.RunTests(0x5afe80, 0x646a20, 0x6, 0x6, 0xb906fd549c596001)
    /usr/local/go/src/pkg/testing/testing.go:510 +0x942 fp=0xc20801be68 sp=0xc20801bcc8
testing.Main(0x5afe80, 0x646a20, 0x6, 0x6, 0x64f0e0, 0x0, 0x0, 0x64f0e0, 0x0, 0x0)
    /usr/local/go/src/pkg/testing/testing.go:440 +0x83 fp=0xc20801bee8 sp=0xc20801be68
main.main()
    runtime/pprof/_test/_testmain.go:57 +0x95 fp=0xc20801bf40 sp=0xc20801bee8
runtime.main()
    /usr/local/go/src/pkg/runtime/proc.c:259 +0x137 fp=0xc20801bfa8 sp=0xc20801bf40
runtime.goexit()
    /usr/local/go/src/pkg/runtime/proc.c:1490 fp=0xc20801bfb0 sp=0xc20801bfa8

goroutine 2 [runnable]:
runtime.notetsleepg(0xc208017f70, 0xdf8475800)
    /usr/local/go/src/pkg/runtime/lock_sema.c:263 +0x88 fp=0xc208017f48 sp=0xc208017f18
runtime.MHeap_Scavenger()
    /usr/local/go/src/pkg/runtime/mheap.c:668 +0x99 fp=0xc208017fa8 sp=0xc208017f48
runtime.goexit()
    /usr/local/go/src/pkg/runtime/proc.c:1490 fp=0xc208017fb0 sp=0xc208017fa8
created by runtime.main
    /usr/local/go/src/pkg/runtime/proc.c:219

goroutine 3 [GC sweep wait]:
runtime.park(0x41ebc0, 0x64b320, 0x64a43b, 0xd)
    /usr/local/go/src/pkg/runtime/proc.c:1421 +0xa7 fp=0xc208019f50 sp=0xc208019f40
runtime.parkunlock(0x64b320, 0x64a43b, 0xd)
    /usr/local/go/src/pkg/runtime/proc.c:1437 +0x47 fp=0xc208019f78 sp=0xc208019f50
bgsweep()
    /usr/local/go/src/pkg/runtime/mgc0.c:1114 +0xd2 fp=0xc208019fa8 sp=0xc208019f78
runtime.goexit()
    /usr/local/go/src/pkg/runtime/proc.c:1490 fp=0xc208019fb0 sp=0xc208019fa8
created by runtime.gc
    /usr/local/go/src/pkg/runtime/mgc0.c:1332

goroutine 4 [finalizer wait, 3 minutes]:
runtime.park(0x41ebc0, 0x64b2f8, 0x64a594, 0xe)
    /usr/local/go/src/pkg/runtime/proc.c:1421 +0xa7 fp=0xc208049f08 sp=0xc208049ef8
runtime.parkunlock(0x64b2f8, 0x64a594, 0xe)
    /usr/local/go/src/pkg/runtime/proc.c:1437 +0x47 fp=0xc208049f30 sp=0xc208049f08
runfinq()
    /usr/local/go/src/pkg/runtime/mgc0.c:1667 +0xf4 fp=0xc208049fa8 sp=0xc208049f30
runtime.goexit()
    /usr/local/go/src/pkg/runtime/proc.c:1490 fp=0xc208049fb0 sp=0xc208049fa8
created by runtime.gc
    /usr/local/go/src/pkg/runtime/mgc0.c:1332

goroutine 5 [runnable]:
runtime.notetsleepg(0x64baf8, 0x1bf08cdd53)
    /usr/local/go/src/pkg/runtime/lock_sema.c:263 +0x88 fp=0xc20804bf48 sp=0xc20804bf18
timerproc()
    /usr/local/go/src/pkg/runtime/time.goc:257 +0x11e fp=0xc20804bfa8 sp=0xc20804bf48
runtime.goexit()
    /usr/local/go/src/pkg/runtime/proc.c:1490 fp=0xc20804bfb0 sp=0xc20804bfa8
created by addtimer
    /usr/local/go/src/pkg/runtime/time.goc:111

rax     0x4
rbx     0xc20801e9bc
rcx     0xffffffff80102160
rdx     0xc20801e9b8
rdi     0xc208045ae8
rsi     0x0
rbp     0xc208045af0
rsp     0xc208045ac0
r8      0x131
r9      0x4a
r10     0x0
r11     0x206
r12     0x0
r13     0xc20802c140
r14     0x0
r15     0x9d
rip     0x43128a
rflags  0x207
cs      0xe033
fs      0xffffa000a9fc0000
gs      0x0
*** Test killed with quit: ran too long (3m0s).
FAIL    runtime/pprof   180.072s
@josharian
Copy link
Contributor Author

Comment 1:

Attempts to reproduce on darwin/amd64 have failed--no hangs yet in >1000 runs.

@OneOfOne
Copy link
Contributor

Comment 2:

I can't reproduce on i5 (amd64) either.

@rsc
Copy link
Contributor

rsc commented Sep 15, 2014

Comment 3:

I would start with the
    // TODO(jsing) - potential deadlock!
comment in os_netbsd.c.
I think os_netbsd.c should look more like this:
https://golang.org/cl/144900043
Anyone is welcome to pick this up and work on it. I won't.

@rsc
Copy link
Contributor

rsc commented Sep 17, 2014

Comment 5:

Labels changed: added release-none, removed release-go1.4.

@rsc rsc added this to the Unplanned milestone Apr 10, 2015
@bradfitz
Copy link
Contributor

bradfitz commented Apr 6, 2017

I updated the NetBSD builders to NetBSD 7.1.

Maybe something was fixed. We'll see.

/cc @bsiegert

@gopherbot
Copy link
Contributor

CL https://golang.org/cl/47036 mentions this issue.

gopherbot pushed a commit that referenced this issue Jun 28, 2017
Updates #20836
Updates #19339
Updates #19652
Updates #20835
Updates #16511
Updates #10166
Updates #8574

Change-Id: If9a7f560489f1a8d628dafab227925bd8989326e
Reviewed-on: https://go-review.googlesource.com/47036
Reviewed-by: Ian Lance Taylor <iant@golang.org>
@bradfitz
Copy link
Contributor

Fixed by requiring NetBSD 8+ for Go 1.10.

Documentation bug is #22911

@golang golang locked and limited conversation to collaborators Nov 28, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

6 participants