Open
Bug 1331674
(SyncIPC)
Opened 8 years ago
Updated 2 years ago
[meta] Stop doing sync IPC from the content process or the UI thread
Categories
(Core :: DOM: Core & HTML, defect, P3)
Core
DOM: Core & HTML
Tracking
()
NEW
People
(Reporter: ehsan.akhgari, Unassigned)
References
(Depends on 7 open bugs, )
Details
(Keywords: meta, perf)
This bug tracks the perf issues caused by the content process doing sync IPC to the parent.
Reporter | ||
Updated•8 years ago
|
Comment 1•8 years ago
|
||
Hey ehsan,
Thanks for organizing these bugs! Is there a concerted effort being started here? Or is this more about gathering bugs together for now?
Flags: needinfo?(ehsan)
Reporter | ||
Comment 2•8 years ago
|
||
(In reply to Mike Conley (:mconley) - Getting through review / needinfo backlog from comment #1)
> Hey ehsan,
>
> Thanks for organizing these bugs! Is there a concerted effort being started
> here?
Not yet, but that may change... For now I just want a place to look for tracking this stuff.
Flags: needinfo?(ehsan)
Depends on: 1333489
Reporter | ||
Comment 3•8 years ago
|
||
I'm extending this bug to also track sync IPCs from the UI thread, like bug 1334655.
Depends on: 1334655
Summary: Stop doing sync IPC from the content process → Stop doing sync IPC from the content process or the UI thread
Reporter | ||
Comment 4•8 years ago
|
||
As a final goal for this bug, I propose writing a patch to the IPDL compiler which would reject all sync IPC messages except for anything that we find where there's no other way to do things that we'll somehow annotate.
That way we won't have to keep fighting this issue forever!
Comment 5•8 years ago
|
||
(In reply to :Ehsan Akhgari from comment #4)
> As a final goal for this bug, I propose writing a patch to the IPDL compiler
> which would reject all sync IPC messages except for anything that we find
> where there's no other way to do things that we'll somehow annotate.
>
> That way we won't have to keep fighting this issue forever!
What about doing this now? Adding the annotation to all the current ones and forbidding new sync messages to be created.
This way no new ones can be introduced while the currently existing ones are being fixed.
Reporter | ||
Comment 6•8 years ago
|
||
(In reply to Marco Castelluccio [:marco] from comment #5)
> (In reply to :Ehsan Akhgari from comment #4)
> > As a final goal for this bug, I propose writing a patch to the IPDL compiler
> > which would reject all sync IPC messages except for anything that we find
> > where there's no other way to do things that we'll somehow annotate.
> >
> > That way we won't have to keep fighting this issue forever!
>
> What about doing this now? Adding the annotation to all the current ones and
> forbidding new sync messages to be created.
> This way no new ones can be introduced while the currently existing ones are
> being fixed.
That's a fantastic idea!
Comment 7•8 years ago
|
||
Here's a list of all the sync messages, I think.
Comment 8•8 years ago
|
||
and for JS side then sendSyncMessage
Comment 9•8 years ago
|
||
I wonder if we could change the name of sendSyncMessage. Could it be sendSlowSyncMessage or something which warns the patch author and reviewer.
Comment 10•8 years ago
|
||
(In reply to Olli Pettay [:smaug] from comment #9)
> I wonder if we could change the name of sendSyncMessage. Could it be
> sendSlowSyncMessage or something which warns the patch author and reviewer.
Would it break addons? Otherwise it would be pretty straightforward to search & replace all the files.
Reporter | ||
Comment 11•8 years ago
|
||
(In reply to Kan-Ru Chen [:kanru] (UTC+8) from comment #10)
> (In reply to Olli Pettay [:smaug] from comment #9)
> > I wonder if we could change the name of sendSyncMessage. Could it be
> > sendSlowSyncMessage or something which warns the patch author and reviewer.
>
> Would it break addons? Otherwise it would be pretty straightforward to
> search & replace all the files.
Yes, unfortunately this function is super popular in add-ons. :(
https://dxr.mozilla.org/addons/search?q=sendSyncMessage&redirect=true
Comment 12•8 years ago
|
||
We could shim it, perhaps.
Comment 13•8 years ago
|
||
(In reply to Mike Conley (:mconley) from comment #12)
> We could shim it, perhaps.
Although that won't be useful for add-ons that are marked multiprocessCompatible - and these are the ones probably most likely to be using sendSyncMessage. :/ So nevermind.
Reporter | ||
Updated•8 years ago
|
Blocks: QuantumFlow
Updated•8 years ago
|
Whiteboard: qf:meta]
Updated•8 years ago
|
Whiteboard: qf:meta] → [qf:meta]
Updated•6 years ago
|
Summary: Stop doing sync IPC from the content process or the UI thread → [meta] Stop doing sync IPC from the content process or the UI thread
Assignee | ||
Updated•6 years ago
|
Component: DOM → DOM: Core & HTML
Updated•3 years ago
|
Performance Impact: --- → ?
Whiteboard: [qf:meta]
Updated•3 years ago
|
Performance Impact: ? → ---
Updated•2 years ago
|
Severity: normal → S3
You need to log in
before you can comment on or make changes to this bug.
Description
•