Closed Bug 1540731 Opened 7 months ago Closed 5 months ago

Have IPC code hold a reference to keep the actor alive

Categories

(Core :: IPC, enhancement, P2)

enhancement

Tracking

()

RESOLVED FIXED
mozilla69
Tracking Status
firefox69 --- fixed

People

(Reporter: Nika, Assigned: Nika)

References

(Blocks 3 open bugs, Regressed 1 open bug)

Details

Attachments

(3 files, 2 obsolete files)

This would add IPCAddRef and IPCRelease methods which control when the DeallocPProtocol method is called, and also introduce an IPCRefPtr<T> type which is used internally to manage this IPC reference count. These counts are not intended to be used outside of IPC, but rather as a temporary solution until bug 1509143 is able to be fully implemented.

Attached file Bug 1540731 - WIP (obsolete) —

This is an initial version of the patch for this bug, however it doesn't
successfully pass browser startup. Unfortunately, currently the browser will
crash when attempting to migrate an IPC blob actor.

Depends on: 1540733
No longer depends on: 1540733
Depends on: 1540733
Blocks: 1529811
Attachment #9060262 - Attachment is obsolete: true
Attachment #9054888 - Attachment is obsolete: true
See Also: → 1550010
Blocks: 1550560
Pushed by nlayzell@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/d30842e4cfea
Part 1: Manage actor object lifecycles within IPC, r=froydnj
https://hg.mozilla.org/integration/autoland/rev/89b214d41e50
Part 2: Move toplevel actors to override ActorDestroy, r=froydnj
https://hg.mozilla.org/integration/autoland/rev/11450b71e95e
Part 3: Stop releasing actors within ActorDestroy, r=mayhemer
Regressions: 1575257
You need to log in before you can comment on or make changes to this bug.