On 2012/12/13 02:10:03, dfc wrote:
...
go test itself will hang, ^C or ^\ will not fix it.
I have linux/386. I cannot make it hang. It does everything but hang:
# hg id
8b89b6326704+ tip
# go test net/http
ok net/http 5.946s
# go test net/http
^C# go test net/http
^\# go test net/http
^\SIGQUIT: quit
PC=0xffffe422
created by main.(*builder).do
/root/go/root/src/cmd/go/build.go:632 +0x2dd
goroutine 1 [semacquire]:
sync.runtime_Semacquire(0x18bb8f88, 0x18bb8f88)
/root/go/root/src/pkg/runtime/zsema_linux_386.c:165 +0x32
sync.(*WaitGroup).Wait(0x18c20e80, 0x18bb8ab8)
/root/go/root/src/pkg/sync/waitgroup.go:102 +0xda
main.(*builder).do(0x18ad08c0, 0x18ca3ee0, 0x18ac8160)
/root/go/root/src/cmd/go/build.go:635 +0x2fc
main.runTest(0x84b57c0, 0x18a5f010, 0x1)
/root/go/root/src/cmd/go/test.go:389 +0x19f0
main.main()
/root/go/root/src/cmd/go/main.go:148 +0x38b
goroutine 2 [syscall]:
created by runtime.main
/root/go/root/src/pkg/runtime/proc.c:225
goroutine 3 [syscall]:
os/signal.loop()
/root/go/root/src/pkg/os/signal/signal_unix.go:20 +0x1f
created by os/signal.init·1
/root/go/root/src/pkg/os/signal/signal_unix.go:26 +0x32
goroutine 12 [syscall]:
syscall.Syscall()
/root/go/root/src/pkg/syscall/asm_linux_386.s:20 +0x1f
syscall.read(0x4, 0x18cabc00, 0x200, 0x200, 0x0, ...)
/root/go/root/src/pkg/syscall/zerrors_linux_386.go:2310 +0x5d
syscall.Read(0x4, 0x18cabc00, 0x200, 0x200, 0x8098e46, ...)
/root/go/root/src/pkg/syscall/syscall_unix.go:132 +0x53
os.(*File).read(0x18bc9358, 0x18cabc00, 0x200, 0x200, 0x0, ...)
/root/go/root/src/pkg/os/file_unix.go:174 +0x58
os.(*File).Read(0x18bc9358, 0x18cabc00, 0x200, 0x200, 0x0, ...)
/root/go/root/src/pkg/os/file.go:95 +0x79
bytes.(*Buffer).ReadFrom(0x18aea600, 0x18a5f8c0, 0x18bc9358, 0x0, 0x0,
...)
/root/go/root/src/pkg/bytes/buffer.go:166 +0x196
io.Copy(0x18c20f40, 0x18aea600, 0x18a5f8c0, 0x18bc9358, 0x0, ...)
/root/go/root/src/pkg/io/io.go:357 +0x83
os/exec.func·003(0x18bc92f0, 0x18bc92f8, 0x80c2ff3, 0x82326f4,
0x808d4b6, ...)
/root/go/root/src/pkg/os/exec/exec.go:207 +0x46
os/exec.func·004(0x18bc9278, 0x18b86e40, 0x0)
/root/go/root/src/pkg/os/exec/exec.go:274 +0x23
created by os/exec.(*Cmd).Start
/root/go/root/src/pkg/os/exec/exec.go:275 +0x52e
eax 0x72
ebx 0x157d
ecx 0x18bc94d8
edx 0x0
edi 0x0
esi 0x18caa230
ebp 0x0
esp 0xb759b79c
eip 0xffffe422
eflags 0x282
cs 0x73
fs 0x0
gs 0x33
#
How can I reproduce what you are seeing? Perhaps your net/http test does
not exit on signal, and go waits for it forever?
Alex
https://codereview.appspot.com/6903061/