Closed Bug 1398830 Opened 7 years ago Closed 6 years ago

Ensure that hangs have stack traces for all threads in the crash ping

Categories

(Toolkit :: Crash Reporting, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: gsvelto, Unassigned)

References

Details

+++ This bug was initially created as a clone of Bug #1380252 +++

After the patch for bug 1380252 landed we only send the stack of the crashing thread in a crash ping, however for hangs we should always send stack traces for all threads. The way I've implemented bug 1380252 if there is no crashing thread specified in the minidump then the full stacks should be generated. So, in theory hangs should still get all stacks, so this bug is to verify that this is the case and if not to ensure that hangs always get all stacks in the crash ping.
That heuristic probably doesn't work right, because we ask Breakpad to fake a crash context for the main thread when we write a minidump so that tools like Socorro know which thread to prioritize.
Thanks for the heads up Ted. BTW I just noticed I forgot to change the bug name when clonging the old one.
Summary: Trim the stack traces we send in the crash ping → Ensure that hangs have stack traces for all threads in the crash ping
I did some investigation including stopping the content process (kill -STOP) to provoke hangs, we do indeed get only the main thread of the hanging process in a crash ping. However I think this may be all we require for the crash ping. Unless there is disagreement I think it would be best to leave it as is, with only a single thread.

The issue that concerns me is RunWatchdog, a thread which crashes on shutdown hangs, which is not going to report anything useful if only the crashing thread is sent. I've talked with Gabriele about fixes for this, but I think it is better in a separate bug, I opened bug 1401400.
(In reply to Adam Gashlin [:agashlin] from comment #3)
> I did some investigation including stopping the content process (kill -STOP)
> to provoke hangs, we do indeed get only the main thread of the hanging
> process in a crash ping. However I think this may be all we require for the
> crash ping. Unless there is disagreement I think it would be best to leave
> it as is, with only a single thread.

Indeed, crash pings are used to gather statistics, not to do analysis so sending only the main thread should be fine. I think we can safely close this bug as WORKSFORME.

> The issue that concerns me is RunWatchdog, a thread which crashes on
> shutdown hangs, which is not going to report anything useful if only the
> crashing thread is sent. I've talked with Gabriele about fixes for this, but
> I think it is better in a separate bug, I opened bug 1401400.


Agreed.
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.