Jed Davis 46dbfb9167 Bug 1793525 - Get crash reports for child processes shutdown hangs on debug/sanitizer/ccov builds. r=nika,yjuglaret
On the build types where child processes need to go through full
shutdown to write some kind of logs or data (debug / refcount logging,
sanitizers, code coverage), the parent process currently waits forever
for them to exit and blocks its own shutdown to do so.  If we were to
time out and kill the child processes, test runs would fail due to
missing the log files they were expected to write; instead, they fail
and blame the parent process for not exiting, which is not especially
helpful.

What we'd like is to know the state of the child process that's failing
to exit.  This patch attempts to get a crash report in that situation; on
Unix we send SIGABRT, and on Windows we inject a thread that calls
DbgBreakPoint, both of which result in invoking our crash reporter.

Differential Revision: https://phabricator.services.mozilla.com/D161098
2022-12-13 22:57:49 +00:00
..