-
Notifications
You must be signed in to change notification settings - Fork 18.1k
runtime: TestDebugCallLarge can hang on android/amd64 #25519
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
Comments
Thanks @eliasnaur. Can you reproduce with GOTRACEBACK=crash and post the traceback? |
Change https://golang.org/cl/114086 mentions this issue: |
Also, if you don't mind, could you try with CL 114086 applied? I don't think it will fix this, but it might. |
With
applied, I get:
SIGQUIT: quit
PC=0x7b969882be41 m=0 sigcode=0
goroutine 0 [idle]: goroutine 1 [chan receive, locked to thread]: goroutine 2 [force gc (idle)]: goroutine 3 [GC sweep wait]: goroutine 4 [finalizer wait]: goroutine 20 [GC worker (idle)]: goroutine 9 [GC worker (idle)]: goroutine 4577 [syscall]: goroutine 4587 [running, locked to thread]: rax 0xca SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 4577 [syscall]: SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 4587 [running, locked to thread]: (I don't know why I got multiple backtraces). With CL 114086 applied, I got a hang and the following backtrace:
SIGQUIT: quit
PC=0x7c75c865ee71 m=0 sigcode=0
goroutine 0 [idle]: goroutine 1 [chan receive, locked to thread]: goroutine 2 [force gc (idle)]: goroutine 3 [GC sweep wait]: goroutine 4 [finalizer wait]: goroutine 9 [GC worker (idle)]: goroutine 20 [GC worker (idle)]: goroutine 5780 [syscall]: goroutine 5796 [running, locked to thread]: rax 0xca SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 0 [idle]: SIGQUIT: quit goroutine 5796 [running, locked to thread]: SIGQUIT: quit goroutine 5780 [syscall]: SIGQUIT: quit goroutine 0 [idle]: |
TestDebugCall* uses atomic spin loops and hence can deadlock if the garbage collector is enabled (because of #10958; ironically, implementing debugger call injection is closely related to fixing this exact issue, but we're not there yet). Fix this by disabling the garbage collector during these tests. Updates #25519 (might fix it, though I suspect not) Change-Id: If1e454b9cdea8e4b1cd82509b762c75b6acd8476 Reviewed-on: https://go-review.googlesource.com/114086 Run-TryBot: Austin Clements <[email protected]> TryBot-Result: Gobot Gobot <[email protected]> Reviewed-by: Keith Randall <[email protected]>
Change https://golang.org/cl/123180 mentions this issue: |
Updates #25519 Change-Id: Ibcdf948fd38d8d02d467b62213566ec0d7ce0d6a Reviewed-on: https://go-review.googlesource.com/123180 Run-TryBot: Ian Lance Taylor <[email protected]> TryBot-Result: Gobot Gobot <[email protected]> Reviewed-by: Austin Clements <[email protected]>
FWIW, I just got a very similar failure on linux/amd64 during a stress test of all.bash. It's the only failure I've had in >500 runs.
|
Change https://golang.org/cl/154112 mentions this issue: |
The android/amd64 (emulator) builder started to timeout in the runtime tests. Running
and then
will trigger a hang, as evidenced by the stopped output. Then the offending process can be found on the device with
adb shell
,top
and then a backtrace can be triggered withkill -QUIT <pid>
. I got:TestDebugCallLarge was added in CL 109699, so CC'ing @aclements .
The text was updated successfully, but these errors were encountered: