Skip to content
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 shutdown with multiple unhandled HW exceptions #105578

Merged
merged 1 commit into from
Jul 27, 2024

Conversation

janvorli
Copy link
Member

When multiple threads crash with hardware unhandled exceptions at the same time, the fact that we were uninstalling async signal handlers at process exit caused crashes when some thread reached the signal handler after .NET handler was removed.

This change fixes it by not restoring the signal handlers during process exit. It actually stops restoring any signal handlers except for SIGABRT that has to be restored to actually enable the process exit with abort().

Close #46175

When multiple threads crash with hardware unhandled exceptions at the
same time, the fact that we were uninstalling async signal handlers
at process exit caused crashes when some thread reached the signal
handler after .NET handler was removed.

This change fixes it by not restoring the signal handlers during
process exit. It actually stops restoring any signal handlers except
for SIGABRT that has to be restored to actually enable the process
exit with abort().

Close dotnet#46175
@janvorli
Copy link
Member Author

/azp run runtime-coreclr outerloop

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@jkotas
Copy link
Member

jkotas commented Jul 27, 2024

Known failures (#105441)

@jkotas jkotas merged commit 4c3edd5 into dotnet:main Jul 27, 2024
145 of 148 checks passed
@github-actions github-actions bot locked and limited conversation to collaborators Aug 27, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

baseservices/exceptions/stackoverflow/stackoverflowtester/stackoverflowtester fails on Linux
2 participants