Closed
Description
--- FAIL: TestVDSO (71.53s)
crash_test.go:95: testprog SignalInVDSO exit status: exit status 2
crash_test.go:149: output:
SIGQUIT: quit
PC=0x6b4c8 m=1 sigcode=0
goroutine 0 [idle]:
runtime.usleep()
/workdir/go/src/runtime/sys_linux_arm64.s:148 +0x48
runtime.sysmon()
/workdir/go/src/runtime/proc.go:4461 +0x9c
runtime.mstart1()
/workdir/go/src/runtime/proc.go:1125 +0xb0
runtime.mstart()
/workdir/go/src/runtime/proc.go:1090 +0x60
goroutine 1 [running]:
goroutine running on other thread; stack unavailable
goroutine 18 [sleep]:
time.Sleep(0x5f5e100)
/workdir/go/src/runtime/time.go:247 +0xc0
runtime/pprof.profileWriter(0x12c880, 0x40001b0018)
/workdir/go/src/runtime/pprof/pprof.go:765 +0x60
created by runtime/pprof.StartCPUProfile
/workdir/go/src/runtime/pprof/pprof.go:750 +0x128
2019-11-08T21:27:51-b7d097a/linux-arm64-packet
2019-11-08T18:11:01-1fd3f8b/linux-arm64-packet
2019-11-08T16:20:17-4208dbe/linux-arm64-packet
2019-11-07T20:34:27-4751db9/linux-arm64-packet
See also #33574.
Metadata
Metadata
Assignees
Labels
Type
Projects
Relationships
Development
No branches or pull requests
Activity
ianlancetaylor commentedon Nov 8, 2019
As far as I can see this means that this loop in runtime/testdata/testprog/vdso.go
ran for more than one minute. Hmmm.
ianlancetaylor commentedon Nov 8, 2019
Given that this just started to appear, I'm naturally suspicious of CL 203461 == 1b0b980.
CC @cherrymui
cherrymui commentedon Nov 10, 2019
I think I have a guess:
I think we don't want to save G if we're already on the signal stack. This seems to make it work, running 1000 iterations without failure.
gopherbot commentedon Nov 11, 2019
Change https://golang.org/cl/206397 mentions this issue:
runtime: don't save G during VDSO if we're handling signal