-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Fix multiple dumps from being generated #80474
Conversation
Issue: dotnet#78956 After a core dump is generated because of a unhandled managed exception abort() is called but a SIGSEGV is generated in libpthread.so which is caught by the runtime and a second core dump is generated. The fix is to uninstall/uninitialize all the signal handlers, not just SIGABORT.
cc: @janvorli |
@mikem8361 do you have any details on why the SIGSEGV might be happening at all? Nevertheless, this change is good. |
We've only been able to repro in AKS, and we didn't have a set of symbols available. |
Here is the stack trace from the second dump where abort() calls libpthread_2_31!funlockfile() which generates a SIGSEGV/generates this dump. Not sure that helps much.
|
/backport to release/7.0 |
Started backporting to release/7.0: https://github.com/dotnet/runtime/actions/runs/3933111844 |
Issue: #78956
After a core dump is generated because of a unhandled managed exception abort() is called but a SIGSEGV is generated in libpthread.so which is caught by the runtime and a second core dump is generated. The fix is to uninstall/uninitialize all the signal handlers, not just SIGABORT.