Repository: go
Issue: runtime: Plan 9 stuck forever in TestNoHelperGoroutines
Labels: OS-Plan9,compiler/runtime

Plan 9 sometimes hangs in TestNoHelperGoroutines:

https://storage.googleapis.com/go-build-log/eb8fa651/plan9-386_f2178495.log

```
##### GOMAXPROCS=2 runtime -cpu=1,2,4
panic: test timed out after 5m0s

goroutine 232244 [running]:
testing.startAlarm.func1()
    /tmp/workdir/go/src/testing/testing.go:703 +0xfd
created by time.goFunc
    /tmp/workdir/go/src/time/sleep.go:129 +0x35

goroutine 1 [chan receive, 4 minutes]:
testing.RunTests(0x238e74, 0x2e75a0, 0x99, 0x99, 0x185801)
    /tmp/workdir/go/src/testing/testing.go:562 +0x71a
testing.(*M).Run(0x104d4f84, 0xb171f)
    /tmp/workdir/go/src/testing/testing.go:494 +0x67
main.main()
    runtime/_test/_testmain.go:896 +0xff

goroutine 232243 [syscall, 4 minutes]:
syscall.Syscall6(0x4, 0x11bc5400, 0x200, 0xffffffff, 0xffffffff, 0x0, 0x0, 0xee4b, 0x200, 0x184a00, ...)
    /tmp/workdir/go/src/syscall/asm_plan9_386.s:57 +0x5
syscall.Pread(0x4, 0x11bc5400, 0x200, 0x200, 0xffffffff, 0xffffffff, 0x2910a, 0x0, 0x0)
    /tmp/workdir/go/src/syscall/zsyscall_plan9_386.go:228 +0x72
syscall.Read(0x4, 0x11bc5400, 0x200, 0x200, 0x0, 0x0, 0x0)
    /tmp/workdir/go/src/syscall/syscall_plan9.go:123 +0x54
os.(*File).read(0x104883e8, 0x11bc5400, 0x200, 0x200, 0x11bc5400, 0x0, 0x0)
    /tmp/workdir/go/src/os/file_plan9.go:248 +0x49
os.(*File).Read(0x104883e8, 0x11bc5400, 0x200, 0x200, 0x1, 0x0, 0x0)
    /tmp/workdir/go/src/os/file.go:95 +0x6e
bytes.(*Buffer).ReadFrom(0x104b65a0, 0x30461840, 0x104883e8, 0x0, 0x0, 0x0, 0x0)
    /tmp/workdir/go/src/bytes/buffer.go:173 +0x1c2
io.copyBuffer(0x30461810, 0x104b65a0, 0x30461840, 0x104883e8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
    /tmp/workdir/go/src/io/io.go:374 +0x128
io.Copy(0x30461810, 0x104b65a0, 0x30461840, 0x104883e8, 0x0, 0x0, 0x0, 0x0)
    /tmp/workdir/go/src/io/io.go:350 +0x52
os/exec.(*Cmd).writerDescriptor.func1(0x0, 0x0)
    /tmp/workdir/go/src/os/exec/exec.go:232 +0x71
os/exec.(*Cmd).Start.func1(0x107aa3c0, 0x1083f880)
    /tmp/workdir/go/src/os/exec/exec.go:340 +0x1c
created by os/exec.(*Cmd).Start
    /tmp/workdir/go/src/os/exec/exec.go:341 +0x77a

goroutine 232236 [syscall, 4 minutes, locked to thread]:
syscall.Syscall(0x106fdcc8, 0x200, 0x0, 0x0, 0x3, 0x2, 0x1, 0x801)
    /tmp/workdir/go/src/syscall/asm_plan9_386.s:22 +0x5
syscall.await(0x106fdcc8, 0x200, 0x200, 0x104eb09c, 0x0, 0x0)
    /tmp/workdir/go/src/syscall/zsyscall_plan9_386.go:45 +0x5a
syscall.Await(0x10836220, 0x0, 0x0)
    /tmp/workdir/go/src/syscall/syscall_plan9.go:200 +0x89
syscall.startProcess.func1(0x10817b40, 0x16, 0x10817a80, 0x4, 0x4, 0x10834060, 0x11bbab00)
    /tmp/workdir/go/src/syscall/exec_plan9.go:564 +0x212
created by syscall.startProcess
    /tmp/workdir/go/src/syscall/exec_plan9.go:568 +0x91

goroutine 232234 [chan receive, 4 minutes]:
syscall.WaitProcess(0x48f, 0x11bc32e0, 0x0, 0x0)
    /tmp/workdir/go/src/syscall/exec_plan9.go:640 +0x96
os.(*Process).wait(0x10818d90, 0x0, 0x0, 0x0)
    /tmp/workdir/go/src/os/exec_plan9.go:71 +0x71
os.(*Process).Wait(0x10818d90, 0x1081a200, 0x0, 0x0)
    /tmp/workdir/go/src/os/doc.go:45 +0x2a
os/exec.(*Cmd).Wait(0x107aa3c0, 0x0, 0x0)
    /tmp/workdir/go/src/os/exec/exec.go:380 +0x19a
os/exec.(*Cmd).Run(0x107aa3c0, 0x0, 0x0)
    /tmp/workdir/go/src/os/exec/exec.go:258 +0x57
os/exec.(*Cmd).CombinedOutput(0x107aa3c0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /tmp/workdir/go/src/os/exec/exec.go:424 +0x23e
runtime_test.executeTest(0x104b6540, 0x23c0e0, 0xb4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /tmp/workdir/go/src/runtime/crash_test.go:83 +0xcd9
runtime_test.TestNoHelperGoroutines(0x104b6540)
    /tmp/workdir/go/src/runtime/crash_test.go:230 +0x4d
testing.tRunner(0x104b6540, 0x2e7708)
    /tmp/workdir/go/src/testing/testing.go:456 +0x8e
created by testing.RunTests
    /tmp/workdir/go/src/testing/testing.go:561 +0x6e8
FAIL    runtime 300.057s
2015/10/19 11:12:40 Failed: exit status: 'go 158: 1'
```