mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-02-26 04:09:50 +00:00

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