Closed Bug 1406442 Opened 8 years ago Closed 8 years ago

Improve crash annotations for IPC ShutDownKill after ContentChild::SendFinishShutdown called

Categories

(Core :: DOM: Content Processes, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla58
Tracking Status
firefox58 --- fixed

People

(Reporter: aosmond, Assigned: aosmond)

References

Details

Attachments

(1 file)

We have seen a significant increase (2-3x) since the days of 55b in the proportion of IPC ShutDownKill crash reports after ContentChild::SendFinishShutdown has been called. This could be explained by either the SendFinishShutdown call failing in the content process, or the RecvFinishShutdown call not happening in time in the parent process. We should improve the crash annotation to figure where it is going wrong.
Assignee: nobody → aosmond
Status: NEW → ASSIGNED
Specifically 54b and 55b had < 20% of the IPC ShutDownKill crash reports in the IPC shutdown state of "SendFinishShutdown". 56b, 57b and 58a are all >40%. This is the single largest "cause" to explain the increase in crash reports that I have been able to glean from the data thus far.
Blocks: 1399847
What I hope to get from this: 1) If the content process is failing to send the message, we should consider quick exiting immediately. We cleanly shutdown but were otherwise unable to notify the parent. 2) If the parent process is failing to receive the message before we time out, we should consider increasing the timeout period slightly and seeing if that gives us enough time to receive the message we know should be in flight.
Attachment #8916054 - Flags: review?(ehsan) → review+
Pushed by aosmond@gmail.com: https://hg.mozilla.org/integration/mozilla-inbound/rev/22e994d66684 Improve IPCShutdownState annotation for SendFinishShutdown state to know message status. r=ehsan
Status: ASSIGNED → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla58
It appears that they are successfully sending and the parent isn't receiving them before the timer expires.
(In reply to Andrew Osmond [:aosmond] from comment #6) > It appears that they are successfully sending and the parent isn't receiving > them before the timer expires. I should amend this after a few more days of reports. *None* of them fail to send, and *none* of them are still pending when we get killed. My instincts were that if we saw a lot of "sent" reports, and we were getting killed because it was a race with the parent's timer, then we would also see a lot of "sending" reports (because it is a race condition!). While increasing the timer by 1 second is probably a worthy experiment to try on nightly, I expect something else is going wrong. Maybe the parent isn't getting woken up by the child's message.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: