-
Notifications
You must be signed in to change notification settings - Fork 18k
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
runtime: "unexpected return pc for runtime.pthread_kill_trampoline" on darwin builders #37605
Comments
Possibly related to #32023. |
Possibly related to #36996: does the fix for that issue in |
It doesn't seem the same as #36996 to me. (And as you said, signal_unix.go covers darwin.) Looking at the faulting PC, it seems fault is inside pthread_kill? |
I took another look of the hex dumps. I'm pretty sure that it faults within 10.15: 5043 runs so far, 0 failures I also cannot reproduce it on my laptop (10.15). So it seems this may be specific to macOS 10.14, where there may be a bug in The above-listed failures on darwin-amd64-race builders all happened before we updated darwin-amd64-race builder to 10.15. So this supports my hypothesis. It would be good to check that it doesn't fail after it. I wrote the following C program, which creates a number of threads and send signals to each other really hard (derived from TestCgoCallbackGC):
It doesn't fail on my laptop, with 10000+ runs under |
I got the following trace for the C program above using lldb. It faults within
Just a guess: it might be a race between |
The |
Based on the discussion, closing this as a macOS bug that is fixed in 1.15. If someone wants to figure out a workaround in Go, great, but it doesn't seem that we must do that. |
2020-03-02T16:12:20-ab7ecea/darwin-amd64-race
2019-12-24T16:13:37-c170b14/darwin-amd64-race
I suspect (without evidence) that this may be related to goroutine preemption in 1.14.
See also #34039.
CC @aclements @ianlancetaylor @cherrymui
The text was updated successfully, but these errors were encountered: