Joshua Peraza fd732953ce linux: handle multi-threaded crashes
Handle multiple simultaneous crashes among threads by having
the first crashing thread set an atomic flag and subsequently crashing
threads check the flag before requesting a dump. If a dump has already
been requested, the threads pause on a futex with a timeout in case the
crashing thread crashes again or otherwise fails to WakeThreads().

The thread_local disabled_for_thread_ is removed and combined with this
flag because accessing thread_locals produces undefined behavior in
signal handlers.

Bug:crashpad:384, chromium:861730
Change-Id: I83bce36e1010d0635ba8aeac937e150c43a4166f
Reviewed-on: https://chromium-review.googlesource.com/c/crashpad/crashpad/+/3403017
Reviewed-by: Mark Mentovai <mark@chromium.org>
Commit-Queue: Joshua Peraza <jperaza@chromium.org>
2022-01-20 18:38:56 +00:00
2022-01-19 20:21:19 +00:00
2022-01-19 20:21:19 +00:00
2022-01-19 20:21:19 +00:00
2022-01-19 20:21:19 +00:00
2022-01-19 20:21:19 +00:00
2018-07-10 15:29:34 +00:00
2018-10-01 18:05:23 +00:00
2022-01-19 20:21:19 +00:00
2014-07-30 23:24:58 -04:00
2018-10-17 22:45:45 +00:00

Crashpad

Crashpad is a crash-reporting system.

Documentation

Source Code

Crashpads source code is hosted in a Git repository at https://chromium.googlesource.com/crashpad/crashpad.

Description
A crash-reporting system
Readme Apache-2.0
Languages
C++ 92.6%
Objective-C++ 2.5%
C 2%
Python 1.7%
Assembly 0.9%
Other 0.3%