-
Notifications
You must be signed in to change notification settings - Fork 14
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
Debugging hangs #1238
Debugging hangs #1238
Conversation
cscs-ci run |
I suspect https://gitlab.com/cscs-ci/ci-testing/webhook-ci/mirrors/4700071344751697/7514005670787789/-/jobs/8650776698#L2248 might be another case of |
cscs-ci run |
0bd6384
to
e4969e2
Compare
cscs-ci run |
e4969e2
to
0d5e708
Compare
cscs-ci run |
0d5e708
to
5e33aa2
Compare
cscs-ci run |
5e33aa2
to
f59d350
Compare
cscs-ci run |
f59d350
to
49a5aeb
Compare
cscs-ci run |
1 similar comment
cscs-ci run |
With pika 0.30.1 I've been able to reproduce two segfaults on So far I haven't been able to reproduce anything with pika 0.31.0, which is a good sign, but I'll run more tests. |
f422bd1
to
49a5aeb
Compare
cscs-ci run |
2 similar comments
cscs-ci run |
cscs-ci run |
It seems like pika 0.31.0 is still able to trigger something related to gtest/scoped_trace: https://gitlab.com/cscs-ci/ci-testing/webhook-ci/mirrors/4700071344751697/7514005670787789/-/jobs/8688842361. |
cscs-ci run |
49a5aeb
to
65fd8dc
Compare
cscs-ci run |
1 similar comment
cscs-ci run |
c77ade6
to
3139cf4
Compare
cscs-ci run |
3139cf4
to
7a9a7b2
Compare
cscs-ci run |
1 similar comment
cscs-ci run |
915e88f
to
a755d0d
Compare
cscs-ci run |
4 similar comments
cscs-ci run |
cscs-ci run |
cscs-ci run |
cscs-ci run |
I've separated one fix into #1257. I still need to find a good solution for the debug bloat so that we can use pika 0.31.0 in CI as well. |
A patch to have gtest detect yielding during |
94e9c6f
to
f2a4cef
Compare
cscs-ci run |
cscs-ci run |
1 similar comment
cscs-ci run |
…read different than where it was destroyed gtest ScopedTrace/SCOPED_TRACE uses thread local stacks to keep track of traces. When combined with pika tasks that may yield and be stolen onto other worker threads, destroying a ScopedTrace on a different thread can segfault, cause hangs, or simply corrupt data. Instead of allowing that to happen every now and then we instead patch gtest to check if this happens and terminate as soon as it's detected. Use of ScopedTrace should be avoided in situations where tasks can yield. This patch does not fix the issue, but helps recognizing when e.g. a segfault is the cause of "only" improper use of ScopedTrace or if it is a result of other algorithmic or implementation issues.
e0fdbf4
to
0f8b2e5
Compare
cscs-ci run |
1 similar comment
cscs-ci run |
This PR has served its debugging purposes for now, closing. |
No description provided.