Closed Bug 1790611 Opened 2 years ago Closed 2 years ago

Investigate SendFinishShutdown (sent) cases

Categories

(Core :: DOM: Content Processes, task)

task

Tracking

()

RESOLVED FIXED
106 Branch
Tracking Status
firefox106 --- fixed

People

(Reporter: jstutte, Assigned: jstutte)

References

(Blocks 1 open bug)

Details

Attachments

(1 file, 1 obsolete file)

Roughly ~20% of the cases show the SendFinishShutdown (sent) annotation.

This means the child process did all its shutdown sequence and sent the success message to the parent process. But the parent process did not run it before the timer fired. We do not know if the parent process has just a long queue or if the last runnable that ran before the timer event is executed took very long.

This opens some interesting prioritization questions. We might be able to influence this by just raising the priority of FinishShutdown. It should be ok to run this event out of order, it just closes the top level actor of an already MarkAsDead process and frees some other object. I'd expect it also to be fast enough (O(1) in the parent process) to not matter in terms of performance.

Edit: This change breaks some existing tests (and probably also real usage). We must ensure that FinishShutdown is the very last event we try to process in the parent for this child process. Olli suggested to peek the message queue for a FinishShutdown message when the ForceKillTimer triggers such that we avoid a hard kill in this case (or at least avoid to send a report about it).

Assignee: nobody → jstutte
Status: NEW → ASSIGNED
Attachment #9294442 - Attachment is obsolete: true
Pushed by jstutte@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/567ef82d2b85 Add a high priority NotifyShutdownSuccess that avoids blaming the content process with a dump. r=smaug
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 106 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: