Support DocumentLoadListener-triggered toplevel process switches outside of tabbrowser
Categories
(Core :: DOM: Navigation, enhancement, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox79 | --- | fixed |
People
(Reporter: nika, Assigned: nika)
References
(Blocks 1 open bug)
Details
(Keywords: perf-alert)
Attachments
(8 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 |
Assignee | ||
Comment 1•8 months ago
|
||
This new process switching behavior is only enabled for some browser elements,
which have specified a specific attribute. Turning this on for all browsers with
a remote
attribute causes breakage in reftests.
The initial version does not handle switching from remote to parent or
vice-versa, that is covered in a later part.
Assignee | ||
Comment 2•8 months ago
|
||
Add a series of extra hooks and methods to allow tabbrowser to use the new
process switching codepath. This duplicates some of the logic from
updateBrowserRemoteness
into event handlers.
Assignee | ||
Comment 3•8 months ago
|
||
Due to the PPDC process switching changes, we also handle switching between
remote and non-remote browsers with DocumentLoadListener. Adds support to
CanonicalBrowsingContext::ChangeFrameRemoteness to allow it to handle non-remote
browsers as well.
Assignee | ||
Comment 4•8 months ago
|
||
As tabbrowser now uses PROCESS_BEHAVIOR_STANDARD
, PROCESS_BEHAVIOR_CUSTOM
is
now unused. This patch removes that now-unused code.
Assignee | ||
Comment 5•8 months ago
|
||
These were only used by process switches triggered via DocumentChannel, which
now take the PROCESS_BEHAVIOR_STANDARD codepath.
Assignee | ||
Comment 6•8 months ago
|
||
This pref was enabled on all platforms, and the codepath which has it disabled
has been untested for some time. Remove the pref to simplify the code handling
the old case.
Assignee | ||
Comment 7•8 months ago
|
||
This method was used by GroupedSHistory for prerendering, and was missed when we
ripped out the incomplete code.
Assignee | ||
Comment 8•8 months ago
|
||
This assertion would spuriously fire if a content process died after its id was
taken.
Pushed by nlayzell@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/30d2bf04719b Part 1: Support toplevel process switches outside of tabbrowser, r=mattwoodrow https://hg.mozilla.org/integration/autoland/rev/4f6a03152526 Part 2: Use new process switch logic in tabbrowser, r=mattwoodrow,Gijs https://hg.mozilla.org/integration/autoland/rev/8542edc564bc Part 3: Also allow switching between remote and non-remote, r=mattwoodrow,necko-reviewers,valentin https://hg.mozilla.org/integration/autoland/rev/521b4d5a9a89 Part 4: Get rid of PROCESS_BEHAVIOR_CUSTOM, r=mattwoodrow,Gijs,necko-reviewers,valentin https://hg.mozilla.org/integration/autoland/rev/f7d0605295f7 Part 5: Remove a number of now-unused 'updateBrowserRemoteness' parameters, r=Gijs https://hg.mozilla.org/integration/autoland/rev/7bf86513348e Part 6: Get rid of the rebuild_frameloaders pref, r=Gijs https://hg.mozilla.org/integration/autoland/rev/5905995e4815 Part 7: Remove the unused 'navigateAndRestoreByIndex' method, r=Gijs https://hg.mozilla.org/integration/autoland/rev/c7170e76e676 Part 8: Remove unnecessary ASSERT_UNLESS_FUZZING when looking up CP, r=mattwoodrow
Comment 10•8 months ago
|
||
Backed out for bc failures on browser_autoOpen.js
Backout link: https://hg.mozilla.org/integration/autoland/rev/a86c59085c380d03391f3ecf40807d616107cd02
Log link: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=306154280&repo=autoland&lineNumber=2066
Also:
- bc failures on browser_UsageTelemetry_content.js -> https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=306151388&repo=autoland&lineNumber=4478
- dt failure on browser_preloaded_newtab.js -> https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=306151350&repo=autoland&lineNumber=10882
Comment 11•8 months ago
|
||
Pushed by nlayzell@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/d027f301f08c Part 1: Support toplevel process switches outside of tabbrowser, r=mattwoodrow https://hg.mozilla.org/integration/autoland/rev/09337b5ac5cc Part 2: Use new process switch logic in tabbrowser, r=mattwoodrow,Gijs https://hg.mozilla.org/integration/autoland/rev/8421adf26e66 Part 3: Also allow switching between remote and non-remote, r=mattwoodrow,necko-reviewers,valentin https://hg.mozilla.org/integration/autoland/rev/aee7b778f2fd Part 4: Get rid of PROCESS_BEHAVIOR_CUSTOM, r=mattwoodrow,Gijs,necko-reviewers,valentin https://hg.mozilla.org/integration/autoland/rev/5f597199f5b1 Part 5: Remove a number of now-unused 'updateBrowserRemoteness' parameters, r=Gijs https://hg.mozilla.org/integration/autoland/rev/756d28d0d393 Part 6: Get rid of the rebuild_frameloaders pref, r=Gijs https://hg.mozilla.org/integration/autoland/rev/0fcce0287c02 Part 7: Remove the unused 'navigateAndRestoreByIndex' method, r=Gijs https://hg.mozilla.org/integration/autoland/rev/879feb334274 Part 8: Remove unnecessary ASSERT_UNLESS_FUZZING when looking up CP, r=mattwoodrow
Comment 12•8 months ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/d027f301f08c
https://hg.mozilla.org/mozilla-central/rev/09337b5ac5cc
https://hg.mozilla.org/mozilla-central/rev/8421adf26e66
https://hg.mozilla.org/mozilla-central/rev/aee7b778f2fd
https://hg.mozilla.org/mozilla-central/rev/5f597199f5b1
https://hg.mozilla.org/mozilla-central/rev/756d28d0d393
https://hg.mozilla.org/mozilla-central/rev/0fcce0287c02
https://hg.mozilla.org/mozilla-central/rev/879feb334274
Assignee | ||
Updated•8 months ago
|
Comment 13•7 months ago
|
||
== Change summary for alert #26254 (as of Wed, 17 Jun 2020 13:17:47 GMT) ==
Improvements:
1% Base Content JS windows7-32-shippable opt 2,907,873.83 -> 2,875,532.67
For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=26254
Description
•