skia2/dm
mtklein 5b64dab5bc better exclusion for stack traces
Instead of two synchronization systems (in_signal_handler, gMutex),
we can just use one.  This simplifies the signal handler logic to:
   - first thread through grabs the lock, prints what's running and a stack trace,
     then exits
   - all other threads just sit waiting on that lock until exit kills them

Previously I think all threads were racing to exit, which can kill the process
before the printing thread is done.  That truncated the output, which is dumb.

Plus...
   refactor slightly so that crash_handler() shows up at the top of the stack
   trace rather than some odd name for a lambda inside setup_crash_handler().

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2051863002

Review-Url: https://codereview.chromium.org/2051863002
2016-06-09 08:59:48 -07:00
..
DM.cpp better exclusion for stack traces 2016-06-09 08:59:48 -07:00
DMGpuSupport.h Rename lots of things from 'sRGB' to 'GammaCorrect', where appropriate 2016-04-13 13:10:14 -07:00
DMJsonWriter.cpp Revert of SK_DECLARE_STATIC_MUTEX -> static SkMutex (patchset #1 id:1 of https://codereview.chromium.org/1948193002/ ) 2016-05-04 17:12:46 -07:00
DMJsonWriter.h Add gamma_correct option field to dm.json 2016-02-29 07:38:01 -08:00
DMSrcSink.cpp Modify QCMS test to match use by Chrome 2016-06-08 10:02:32 -07:00
DMSrcSink.h Use SK_TEST_QCMS to mark qcms test code 2016-06-06 08:20:38 -07:00
DMSrcSinkAndroid.cpp Simplify linkages to Android framework internals 2015-10-26 07:21:32 -07:00
DMSrcSinkAndroid.h DM: this must have been missing from the previous CL 2016-02-08 14:30:25 -08:00