Closed
Bug 1492014
Opened 7 years ago
Closed 7 years ago
introduce WorkletImpl as an object to identify a worklet from parent and execution threads
Categories
(Core :: DOM: Core & HTML, defect, P2)
Core
DOM: Core & HTML
Tracking
()
RESOLVED
FIXED
mozilla64
Tracking | Status | |
---|---|---|
firefox64 | --- | fixed |
People
(Reporter: karlt, Assigned: karlt)
References
Details
Attachments
(13 files)
46 bytes,
text/x-phabricator-request
|
baku
:
review+
|
Details | Review |
46 bytes,
text/x-phabricator-request
|
baku
:
review+
|
Details | Review |
46 bytes,
text/x-phabricator-request
|
baku
:
review+
|
Details | Review |
46 bytes,
text/x-phabricator-request
|
baku
:
review+
|
Details | Review |
46 bytes,
text/x-phabricator-request
|
baku
:
review+
|
Details | Review |
46 bytes,
text/x-phabricator-request
|
baku
:
review+
|
Details | Review |
46 bytes,
text/x-phabricator-request
|
baku
:
review+
|
Details | Review |
46 bytes,
text/x-phabricator-request
|
baku
:
review+
|
Details | Review |
46 bytes,
text/x-phabricator-request
|
baku
:
review+
|
Details | Review |
46 bytes,
text/x-phabricator-request
|
baku
:
review+
|
Details | Review |
46 bytes,
text/x-phabricator-request
|
baku
:
review+
|
Details | Review |
46 bytes,
text/x-phabricator-request
|
baku
:
review+
|
Details | Review |
46 bytes,
text/x-phabricator-request
|
baku
:
review+
|
Details | Review |
When more than one worklet executes on the same worklet thread, each worklet
has its own global.
It is useful to have an object to represent the worklet and link its
associated objects on parent and execution threads. Currently, WorkletThread
is the nearest thing to such an object, but this does not support multiple
worklets executing on the same thread.
WorkletLoadInfo can move from Worklet and WorkletThread to the new object,
which is a good point to subclass for AudioWorklet-specific storage and
behavior.
Separating this object from the parent-thread Worklet object provides a
useful notification when no owner-document references remain, and makes
multi-thread ownership simpler.
Assignee | ||
Comment 1•7 years ago
|
||
Assignee | ||
Comment 2•7 years ago
|
||
Assignee | ||
Comment 3•7 years ago
|
||
Depends on D6099
Assignee | ||
Comment 4•7 years ago
|
||
Depends on D6100
Assignee | ||
Comment 5•7 years ago
|
||
Depends on D6101
Assignee | ||
Comment 6•7 years ago
|
||
Depends on D6102
Assignee | ||
Comment 7•7 years ago
|
||
We'll need to support multiple worklets sharng a single execution thread for
AudioWorklet.
Depends on D6103
Assignee | ||
Comment 8•7 years ago
|
||
WebIDL bindings do not need this method because console is a namespace.
All methods are static.
Depends on D6104
Assignee | ||
Comment 9•7 years ago
|
||
Depends on D6105
Assignee | ||
Comment 10•7 years ago
|
||
Depends on D6106
Assignee | ||
Comment 11•7 years ago
|
||
Depends on D6107
Assignee | ||
Comment 12•7 years ago
|
||
This will be useful for AudioWorklet-specific storage and behavior.
PaintWorkletImpl is in layout/style, because it will be referenced
from CSS.cpp in the same directory.
Depends on D6108
Comment 13•7 years ago
|
||
Comment on attachment 9009817 [details]
Bug 1492014 add AudioWorkletImpl/PaintWorkletImpl subclasses r?baku
Andrea Marchesini [:baku] has approved the revision.
Attachment #9009817 -
Flags: review+
Comment 14•7 years ago
|
||
Comment on attachment 9009816 [details]
Bug 1492014 remove now-unused WorkletThread::mWorkletLoadInfo r?baku
Andrea Marchesini [:baku] has approved the revision.
Attachment #9009816 -
Flags: review+
Comment 15•7 years ago
|
||
Comment on attachment 9009815 [details]
Bug 1492014 get WorkletLoadInfo from global instead of thread in Console r?baku
Andrea Marchesini [:baku] has approved the revision.
Attachment #9009815 -
Flags: review+
Comment 16•7 years ago
|
||
Comment on attachment 9009814 [details]
Bug 1492014 store global as nsIGlobalObject on Console so that this may be used for Worklets also r?baku
Andrea Marchesini [:baku] has approved the revision.
Attachment #9009814 -
Flags: review+
Comment 17•7 years ago
|
||
Comment on attachment 9009813 [details]
Bug 1492014 remove unused Console::GetParentObject() r?baku
Andrea Marchesini [:baku] has approved the revision.
Attachment #9009813 -
Flags: review+
Comment 18•7 years ago
|
||
Comment on attachment 9009812 [details]
Bug 1492014 get WorkletLoadInfo from global rather than thread in WorkletGlobalScope r?baku
Andrea Marchesini [:baku] has approved the revision.
Attachment #9009812 -
Flags: review+
Comment 19•7 years ago
|
||
Comment on attachment 9009811 [details]
Bug 1492014 reference WorkletImpl from WorkletGlobalScope r?baku
Andrea Marchesini [:baku] has approved the revision.
Attachment #9009811 -
Flags: review+
Comment 20•7 years ago
|
||
Comment on attachment 9009810 [details]
Bug 1492014 document WorkletLoadInfo thread safety and relax destructor thread assertion r?baku
Andrea Marchesini [:baku] has approved the revision.
Attachment #9009810 -
Flags: review+
Comment 21•7 years ago
|
||
Comment on attachment 9009809 [details]
Bug 1492014 introduce WorkletImpl as an object to identify a worklet from parent and execution threads r?baku
Andrea Marchesini [:baku] has approved the revision.
Attachment #9009809 -
Flags: review+
Comment 22•7 years ago
|
||
Comment on attachment 9009808 [details]
Bug 1492014 remove unused aWorkletLoadInfo parameter to ExecutionRunnable() r?baku
Andrea Marchesini [:baku] has approved the revision.
Attachment #9009808 -
Flags: review+
Comment 23•7 years ago
|
||
Comment on attachment 9009807 [details]
Bug 1492014 remove declaration for non-existant WorkletThread::GetWorkerPrincipal() r?baku
Andrea Marchesini [:baku] has approved the revision.
Attachment #9009807 -
Flags: review+
Assignee | ||
Comment 24•7 years ago
|
||
No behavior change intended.
Assignee | ||
Comment 25•7 years ago
|
||
Depends on D6382
Assignee | ||
Comment 26•7 years ago
|
||
Comment 27•7 years ago
|
||
Comment on attachment 9010604 [details]
Bug 1492014 replace WorkletLoadInfo::mDumpEnabled with StaticPrefs r?baku
Andrea Marchesini [:baku] has approved the revision.
Attachment #9010604 -
Flags: review+
Comment 28•7 years ago
|
||
Comment on attachment 9010603 [details]
Bug 1492014 test Console::mInnerID instead of mGlobal when needing a window id r?baku
Andrea Marchesini [:baku] has approved the revision.
Attachment #9010603 -
Flags: review+
Comment 29•7 years ago
|
||
Pushed by ktomlinson@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/d77330a1cbfa
remove declaration for non-existant WorkletThread::GetWorkerPrincipal() r=baku
https://hg.mozilla.org/integration/autoland/rev/b0f2fafdba8c
remove unused aWorkletLoadInfo parameter to ExecutionRunnable() r=baku
https://hg.mozilla.org/integration/autoland/rev/3e142ea44140
introduce WorkletImpl as an object to identify a worklet from parent and execution threads r=baku
https://hg.mozilla.org/integration/autoland/rev/e34938a11fab
document WorkletLoadInfo thread safety and relax destructor thread assertion r=baku
https://hg.mozilla.org/integration/autoland/rev/4d1ba44e30ab
reference WorkletImpl from WorkletGlobalScope r=baku
https://hg.mozilla.org/integration/autoland/rev/ac095c2fdd8b
get WorkletLoadInfo from global rather than thread in WorkletGlobalScope r=baku
https://hg.mozilla.org/integration/autoland/rev/5a3967f37d3f
remove unused Console::GetParentObject() r=baku
https://hg.mozilla.org/integration/autoland/rev/d1654231ffb8
store global as nsIGlobalObject on Console so that this may be used for Worklets also r=baku
https://hg.mozilla.org/integration/autoland/rev/0c6b469c9618
get WorkletLoadInfo from global instead of thread in Console r=baku
https://hg.mozilla.org/integration/autoland/rev/8818f5ae0d13
remove now-unused WorkletThread::mWorkletLoadInfo r=baku
https://hg.mozilla.org/integration/autoland/rev/2798792623cf
add AudioWorkletImpl/PaintWorkletImpl subclasses r=baku
https://hg.mozilla.org/integration/autoland/rev/0a8510efbba3
test Console::mInnerID instead of mGlobal when needing a window id r=baku
https://hg.mozilla.org/integration/autoland/rev/f629b66a235f
replace WorkletLoadInfo::mDumpEnabled with StaticPrefs r=baku
Comment 30•7 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/d77330a1cbfa
https://hg.mozilla.org/mozilla-central/rev/b0f2fafdba8c
https://hg.mozilla.org/mozilla-central/rev/3e142ea44140
https://hg.mozilla.org/mozilla-central/rev/e34938a11fab
https://hg.mozilla.org/mozilla-central/rev/4d1ba44e30ab
https://hg.mozilla.org/mozilla-central/rev/ac095c2fdd8b
https://hg.mozilla.org/mozilla-central/rev/5a3967f37d3f
https://hg.mozilla.org/mozilla-central/rev/d1654231ffb8
https://hg.mozilla.org/mozilla-central/rev/0c6b469c9618
https://hg.mozilla.org/mozilla-central/rev/8818f5ae0d13
https://hg.mozilla.org/mozilla-central/rev/2798792623cf
https://hg.mozilla.org/mozilla-central/rev/0a8510efbba3
https://hg.mozilla.org/mozilla-central/rev/f629b66a235f
Status: ASSIGNED → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla64
Comment 31•7 years ago
|
||
Backout by nbeleuzu@mozilla.com:
https://hg.mozilla.org/mozilla-central/rev/d03b538b6b41
Backed out 13 changesets for multiple failures. a=backout
Comment 32•7 years ago
|
||
Narcis, can you please link to the failures in question? Also, bugs backed out from m-c need to be reopened.
Status: RESOLVED → REOPENED
Flags: needinfo?(nbeleuzu)
Resolution: FIXED → ---
Target Milestone: mozilla64 → ---
Comment hidden (obsolete) |
Comment hidden (obsolete) |
Comment 35•7 years ago
|
||
After the backout, it seems that this push didn`t cause the https://treeherder.mozilla.org/logviewer.html#?job_id=201400860&repo=mozilla-central&lineNumber=14440 but causes :
1. Xpcshell failure - https://treeherder.mozilla.org/logviewer.html#?job_id=201397970&repo=mozilla-central&lineNumber=2147
2. Web platform failures:
- https://treeherder.mozilla.org/logviewer.html#?job_id=201397883&repo=mozilla-central&lineNumber=3313
- https://treeherder.mozilla.org/logviewer.html#?job_id=201397979&repo=mozilla-central&lineNumber=20595
- https://treeherder.mozilla.org/logviewer.html#?job_id=201397925&repo=mozilla-central&lineNumber=23779
- https://treeherder.mozilla.org/logviewer.html#?job_id=201397874&repo=mozilla-central&lineNumber=30425
- https://treeherder.mozilla.org/logviewer.html#?job_id=201397905&repo=mozilla-central&lineNumber=13550
- https://treeherder.mozilla.org/logviewer.html#?job_id=201397935&repo=mozilla-central&lineNumber=17057
Karl, can you please take a look?
Flags: needinfo?(karlt)
Comment 36•7 years ago
|
||
There were also Mochitests crashes on [@ mozilla::dom::Console::Console(JSContext*, nsIGlobalObject*, unsigned long, unsigned long)]
Log link: https://treeherder.mozilla.org/logviewer.html#?job_id=201397994&repo=mozilla-central&lineNumber=164462
Assignee | ||
Comment 37•7 years ago
|
||
No longer depends on: 1494799
Flags: needinfo?(karlt)
Comment 38•7 years ago
|
||
Pushed by ktomlinson@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/dc2b839f4e68
remove declaration for non-existant WorkletThread::GetWorkerPrincipal() r=baku
https://hg.mozilla.org/integration/mozilla-inbound/rev/c6bb9f8bbaa3
remove unused aWorkletLoadInfo parameter to ExecutionRunnable() r=baku
https://hg.mozilla.org/integration/mozilla-inbound/rev/8bfd0578ebaf
introduce WorkletImpl as an object to identify a worklet from parent and execution threads r=baku
https://hg.mozilla.org/integration/mozilla-inbound/rev/19c7245a11e0
document WorkletLoadInfo thread safety and relax destructor thread assertion r=baku
https://hg.mozilla.org/integration/mozilla-inbound/rev/7576b6eca5d1
reference WorkletImpl from WorkletGlobalScope r=baku
https://hg.mozilla.org/integration/mozilla-inbound/rev/bb62e7dad63f
get WorkletLoadInfo from global rather than thread in WorkletGlobalScope r=baku
https://hg.mozilla.org/integration/mozilla-inbound/rev/4d3a8fe2d2c7
remove unused Console::GetParentObject() r=baku
https://hg.mozilla.org/integration/mozilla-inbound/rev/270ae583f0ef
store global as nsIGlobalObject on Console so that this may be used for Worklets also r=baku
https://hg.mozilla.org/integration/mozilla-inbound/rev/d952654b9cc2
get WorkletLoadInfo from global instead of thread in Console r=baku
https://hg.mozilla.org/integration/mozilla-inbound/rev/66eb950c3f82
remove now-unused WorkletThread::mWorkletLoadInfo r=baku
https://hg.mozilla.org/integration/mozilla-inbound/rev/e545854fd235
add AudioWorkletImpl/PaintWorkletImpl subclasses r=baku
https://hg.mozilla.org/integration/mozilla-inbound/rev/cb3fa704e175
test Console::mInnerID instead of mGlobal when needing a window id r=baku
https://hg.mozilla.org/integration/mozilla-inbound/rev/17f44e6e8f49
replace WorkletLoadInfo::mDumpEnabled with StaticPrefs r=baku
Comment 39•7 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/dc2b839f4e68
https://hg.mozilla.org/mozilla-central/rev/c6bb9f8bbaa3
https://hg.mozilla.org/mozilla-central/rev/8bfd0578ebaf
https://hg.mozilla.org/mozilla-central/rev/19c7245a11e0
https://hg.mozilla.org/mozilla-central/rev/7576b6eca5d1
https://hg.mozilla.org/mozilla-central/rev/bb62e7dad63f
https://hg.mozilla.org/mozilla-central/rev/4d3a8fe2d2c7
https://hg.mozilla.org/mozilla-central/rev/270ae583f0ef
https://hg.mozilla.org/mozilla-central/rev/d952654b9cc2
https://hg.mozilla.org/mozilla-central/rev/66eb950c3f82
https://hg.mozilla.org/mozilla-central/rev/e545854fd235
https://hg.mozilla.org/mozilla-central/rev/cb3fa704e175
https://hg.mozilla.org/mozilla-central/rev/17f44e6e8f49
Status: REOPENED → RESOLVED
Closed: 7 years ago → 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla64
Updated•6 years ago
|
Component: DOM → DOM: Core & HTML
You need to log in
before you can comment on or make changes to this bug.
Description
•