Stop the CompositorThreadHolder from using ipc's MessageLoop and ipc::base::Thread
Categories
(Core :: Graphics, enhancement, P3)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox78 | --- | fixed |
People
(Reporter: jya, Assigned: jya)
References
(Blocks 1 open bug)
Details
Attachments
(9 files)
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review |
There's really no good reason to use a MessageLoop or ipc::base::Thread; it's internally creating a thread via the same methods as your typical nsThread.
It brings no benefit and requires unnecessarily the ipc::MessageLoop::SerialEventTarget() whenever we need to work with MozPromise.
It's also get in the way of properly fixing bug 1592488
Updated•5 years ago
|
Updated•5 years ago
|
Comment 1•5 years ago
|
||
Dup of bug 1493790?
| Assignee | ||
Updated•5 years ago
|
Comment 2•5 years ago
|
||
More so a dupe of bug 1259450
| Assignee | ||
Comment 3•5 years ago
|
||
| Assignee | ||
Comment 4•5 years ago
|
||
This will allow to have other threads to use one such as the compositor thread.
Depends on D73819
| Assignee | ||
Comment 5•5 years ago
|
||
already_AddRefed destructor assert that it's nullptr.
DelayedDispatch check that the value passed isn't 0 and return an error code, leaving the already_AddRefed untouched.
Depends on D73820
| Assignee | ||
Comment 6•5 years ago
|
||
Depends on D73821
| Assignee | ||
Comment 7•5 years ago
|
||
CompositorBridgeParent::ScheduleTask is always called from the compositor thread ; so make it explicit that we are dispatching the task to the compositor thread.
We make the method private and non-virtual as it's how it's actually used.
Depends on D73823
| Assignee | ||
Comment 8•5 years ago
|
||
Depends on D73824
| Assignee | ||
Comment 9•5 years ago
|
||
We re-enable the option to have a BackgroundHangMonitor on the compositor thread that was removed earlier..
Depends on D73825
| Assignee | ||
Comment 10•5 years ago
|
||
MessagePool brings no benefit over the traditional nsIThread.
Additonally, replace some incorrect use of RefPtr for xpcom objects.
Depends on D73826
| Assignee | ||
Comment 11•5 years ago
|
||
(In reply to Kartikaya Gupta (email:kats@mozilla.com) from comment #2)
More so a dupe of bug 1259450
I only see this comment now.
This list of patch pretty much covers everything listed in bug 1259450 comment 1.
There's no longer a MessageLoop running in the compositor thread (if you exclude the nsThread code that always creates a MessageLoop anyway).
You can no longer dispatch tasks to it.
The CompositorThread is now a nsISerialEventTarget (nsThread internally)
Comment 13•5 years ago
|
||
Comment 14•5 years ago
|
||
Backed out 11 changesets (bug 1635001, bug 1634253) for Browser-chrome failures in browser_bug295977_autoscroll_overflow.js
Log:
https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=301148817&repo=autoland&lineNumber=42290
Push with failures:
https://treeherder.mozilla.org/#/jobs?repo=autoland&group_state=expanded&revision=1cbb2866a3ad7823ef1b45bdbf191721e449a80e
Backout:
https://hg.mozilla.org/integration/autoland/rev/281fa69cb1d3b3162e71c75f0cd7aac8bb46cd50
| Assignee | ||
Comment 15•5 years ago
|
||
The test is a permafail without any of those changes on all my windows machine so I've been unable to diagnostic what could happen.
According to :kats, the test was never rewritten to use the new APZ. Disabling on the platform where there's high intermittent failure (about 70%)
Comment 16•5 years ago
|
||
Comment 17•5 years ago
|
||
Backed out for bc failures on browser_bug295977_autoscroll_overflow.js
Backout link: https://hg.mozilla.org/integration/autoland/rev/4cfa902d0415ad8b01f6c11de76ebc8c8820ab5a
Log link: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=301450419&repo=autoland&lineNumber=6050
Updated•5 years ago
|
Comment 18•5 years ago
|
||
| Assignee | ||
Updated•5 years ago
|
Comment 19•5 years ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/802f45438017
https://hg.mozilla.org/mozilla-central/rev/0a19ecda120c
https://hg.mozilla.org/mozilla-central/rev/dff108315979
https://hg.mozilla.org/mozilla-central/rev/366e40b91676
https://hg.mozilla.org/mozilla-central/rev/eef89c57b57a
https://hg.mozilla.org/mozilla-central/rev/728ba655194f
https://hg.mozilla.org/mozilla-central/rev/091a01b12001
https://hg.mozilla.org/mozilla-central/rev/426e7df37812
https://hg.mozilla.org/mozilla-central/rev/33d3d4104e46
Comment 20•5 years ago
|
||
https://hg.mozilla.org/integration/autoland/rev/728ba655194f dropped a call to ClearAllCaches was that intentional?
| Assignee | ||
Updated•5 years ago
|
Description
•