d5a15c64bd401768c581663b1b13f45e66080616: Backed out 6 changesets (bug 1159042) for crashtest failures. CLOSED TREE
Dorel Luca <dluca@mozilla.com> - Tue, 27 Nov 2018 06:30:07 +0200 - rev 448154
Push
73736 by dluca@mozilla.com at Tue, 27 Nov 2018 04:30:39 +0000
Backed out 6 changesets (
bug 1159042) for crashtest failures. CLOSED TREE
Backed out changeset fe77c09dee31 (
bug 1159042)
Backed out changeset db0e173a6ed2 (
bug 1159042)
Backed out changeset 080b9ceee8ec (
bug 1159042)
Backed out changeset 6a5191742ca1 (
bug 1159042)
Backed out changeset 3a86c3e65d44 (
bug 1159042)
Backed out changeset 845bc8316b05 (
bug 1159042)
63cbd79e897de14cb164992d37b15700fec420f0: Bug 1503074 - Only touch the FX_TAB_SWITCH_COMPOSITE_E10S_MS stopwatch when we have actually started it in the past
Ehsan Akhgari <ehsan@mozilla.com> - Mon, 26 Nov 2018 19:16:09 +0000 - rev 448153
Push
73735 by eakhgari@mozilla.com at Tue, 27 Nov 2018 03:40:47 +0000
Bug 1503074 - Only touch the FX_TAB_SWITCH_COMPOSITE_E10S_MS stopwatch when we have actually started it in the past
Differential Revision:
https://phabricator.services.mozilla.com/D12966
e3a074ae3f0c18a5329c23099c5169f135885852: Bug 1508044 - Part 4: Make nsChannelClassifier use nsContentUtils::IsThirdPartyWindowOrChannel() in order to avoid having duplicated logic r=francois
Ehsan Akhgari <ehsan@mozilla.com> - Tue, 27 Nov 2018 00:46:50 +0000 - rev 448152
Push
73734 by eakhgari@mozilla.com at Tue, 27 Nov 2018 03:07:32 +0000
Bug 1508044 - Part 4: Make nsChannelClassifier use nsContentUtils::IsThirdPartyWindowOrChannel() in order to avoid having duplicated logic r=francois
Depends on D12853
Differential Revision:
https://phabricator.services.mozilla.com/D12854
691286d50c87eb419c121c88836a67a8227e611b: Bug 1508044 - Part 3: Ensure that the third-party checks performed on channels in nsContentUtils::IsThirdPartyWindowOrChannel() follow the same logic as those performed in nsChannelClassifier r=francois
Ehsan Akhgari <ehsan@mozilla.com> - Tue, 27 Nov 2018 00:43:20 +0000 - rev 448151
Push
73734 by eakhgari@mozilla.com at Tue, 27 Nov 2018 03:07:32 +0000
Bug 1508044 - Part 3: Ensure that the third-party checks performed on channels in nsContentUtils::IsThirdPartyWindowOrChannel() follow the same logic as those performed in nsChannelClassifier r=francois
Depends on D12852
Differential Revision:
https://phabricator.services.mozilla.com/D12853
5452c9164d46e49aa8ee6cd3444bb0f8cc7cc121: Bug 1508044 - Part 2: Check the return values of mozIThirdPartyUtil::IsThirdPartyFoo() in nsContentUtils::IsThirdPartyWindowOrChannel() r=francois
Ehsan Akhgari <ehsan@mozilla.com> - Tue, 27 Nov 2018 00:38:52 +0000 - rev 448150
Push
73734 by eakhgari@mozilla.com at Tue, 27 Nov 2018 03:07:32 +0000
Bug 1508044 - Part 2: Check the return values of mozIThirdPartyUtil::IsThirdPartyFoo() in nsContentUtils::IsThirdPartyWindowOrChannel() r=francois
Differential Revision:
https://phabricator.services.mozilla.com/D12852
a12365223e8b4c0eb19eb9e65ebd233069109540: Bug 1510085 - Update webrender to commit 05bdcae134d73aca7bb48358e91de1f8aef27773 (WR PR #3354). r=kats
WR Updater Bot <graphics-team@mozilla.staktrace.com> - Tue, 27 Nov 2018 02:54:00 +0000 - rev 448149
Push
73733 by kgupta@mozilla.com at Tue, 27 Nov 2018 02:54:55 +0000
Bug 1510085 - Update webrender to commit 05bdcae134d73aca7bb48358e91de1f8aef27773 (WR PR #3354). r=kats
https://github.com/servo/webrender/pull/3354
Differential Revision:
https://phabricator.services.mozilla.com/D13029
a613bf1190880ef45811a35ab8e6904fe9263192: Bug 1510084 - Update webrender to commit 35027d93aded8c0a7887dadc8aef5e393171e802 (WR PR #3348). r=kats
WR Updater Bot <graphics-team@mozilla.staktrace.com> - Tue, 27 Nov 2018 02:53:43 +0000 - rev 448148
Push
73732 by kgupta@mozilla.com at Tue, 27 Nov 2018 02:54:18 +0000
Bug 1510084 - Update webrender to commit 35027d93aded8c0a7887dadc8aef5e393171e802 (WR PR #3348). r=kats
https://github.com/servo/webrender/pull/3348
Differential Revision:
https://phabricator.services.mozilla.com/D13028
2b0c95030a8b9c00cd68bbb0c485b8378955ff40: Bug 1510082 - Update reftest annotations for changes in WR PR #3346. r=kats
WR Updater Bot <graphics-team@mozilla.staktrace.com> - Tue, 27 Nov 2018 02:53:03 +0000 - rev 448147
Push
73731 by kgupta@mozilla.com at Tue, 27 Nov 2018 02:53:41 +0000
Bug 1510082 - Update reftest annotations for changes in WR PR #3346. r=kats
Depends on D13026
Differential Revision:
https://phabricator.services.mozilla.com/D13027
4585bb8bd85ac70f17a25bc2407d29b964a4e744: Bug 1510082 - Update webrender to commit e2e52b1145ad959191c0612edd41b0b189cf6b59 (WR PR #3346). r=kats
WR Updater Bot <graphics-team@mozilla.staktrace.com> - Tue, 27 Nov 2018 02:52:50 +0000 - rev 448146
Push
73731 by kgupta@mozilla.com at Tue, 27 Nov 2018 02:53:41 +0000
Bug 1510082 - Update webrender to commit e2e52b1145ad959191c0612edd41b0b189cf6b59 (WR PR #3346). r=kats
https://github.com/servo/webrender/pull/3346
Differential Revision:
https://phabricator.services.mozilla.com/D13026
895fcf304c2a19969e8d075457a7cee36ea06895: Bug 1510078 - Update webrender to commit f450af9277e2474e2a2a2c1358689ca9486e2a09 (WR PR #3345). r=kats
WR Updater Bot <graphics-team@mozilla.staktrace.com> - Tue, 27 Nov 2018 01:16:27 +0000 - rev 448145
Push
73730 by kgupta@mozilla.com at Tue, 27 Nov 2018 02:52:54 +0000
Bug 1510078 - Update webrender to commit f450af9277e2474e2a2a2c1358689ca9486e2a09 (WR PR #3345). r=kats
https://github.com/servo/webrender/pull/3345
Differential Revision:
https://phabricator.services.mozilla.com/D13025
40310bdbb6708f03fd171eb194abb09d7e02f72b: Bug 1509488 - Use keydown handler instead of <key> for Shift+Ctrl+Tab. r=jaws
Dão Gottwald <dao@mozilla.com> - Mon, 26 Nov 2018 16:07:07 +0000 - rev 448144
Push
73729 by dgottwald@mozilla.com at Tue, 27 Nov 2018 02:49:35 +0000
Bug 1509488 - Use keydown handler instead of <key> for Shift+Ctrl+Tab. r=jaws
Differential Revision:
https://phabricator.services.mozilla.com/D12744
8b1f88d7bfeb1949060170ba51b6530db5e93c8e: Bug 1487287 - Move child process launch off the I/O thread. r=mccr8
Jed Davis <jld@mozilla.com> - Thu, 22 Nov 2018 00:06:22 +0000 - rev 448143
Push
73728 by jedavis@mozilla.com at Tue, 27 Nov 2018 02:48:57 +0000
Bug 1487287 - Move child process launch off the I/O thread. r=mccr8
Launching processes takes enough time that we should avoid blocking the
parent process's IPC I/O thread for it; it's less bad for responsiveness
than blocking the main thread, but it's not good.
On Windows we need to use a dedicated thread, because the sandbox isn't
thread-safe and it asserts that the same thread is used for every
launch. Otherwise, a thread pool is used.
Depends on D8945
Differential Revision:
https://phabricator.services.mozilla.com/D8946
8fa5e81ad8015f9bd5ba2b7497f840e4cc50b8bd: Bug 1487287 - Set profiler env vars in child processes without side-effecting the parent process. r=mstange
Jed Davis <jld@mozilla.com> - Thu, 22 Nov 2018 00:06:20 +0000 - rev 448142
Push
73728 by jedavis@mozilla.com at Tue, 27 Nov 2018 02:48:57 +0000
Bug 1487287 - Set profiler env vars in child processes without side-effecting the parent process. r=mstange
We can directly set environment variables for the child process on
all platforms now, instead of changing the parent's environment and
inheriting the changes. This simplifies memory management, but more
importantly it's necessary for thread safety to allow launching
processes from a thread pool.
Depends on D8944
Differential Revision:
https://phabricator.services.mozilla.com/D8945
7a480161fa0fc82f11d2ed492f9f8938a1cdf1fc: Bug 1474991 - Add new and improved performance telemetry for child process launching. r=mccr8,mconley,janerik
Jed Davis <jld@mozilla.com> - Thu, 22 Nov 2018 00:06:17 +0000 - rev 448141
Push
73728 by jedavis@mozilla.com at Tue, 27 Nov 2018 02:48:57 +0000
Bug 1474991 - Add new and improved performance telemetry for child process launching. r=mccr8,mconley,janerik
This patch adds some telemetry histograms:
* CONTENT_PROCESS_LAUNCH_IS_SYNC - boolean, true if the content process
was launched synchronously (blocking the main thread)
* CONTENT_PROCESS_SYNC_LAUNCH_MS - the time consumed by sync launch;
the main thread will be busy or blocked for this entire time
* CONTENT_PROCESS_LAUNCH_TOTAL_MS - the total time elapsed from the
start of async content process launch until the launch promise is
resolved and the ContentParent can be sent IPDL messages
* CONTENT_PROCESS_LAUNCH_MAINTHREAD_MS - the time consumed on the parent
process main thread during async content process launch; typically this
is due to ContentParent::Init.
* CHILD_PROCESS_LAUNCH_MS - for any kind of Gecko child process
(including plugins, GPU, etc.), the time taken in the common process
launch code (which is run off-main-thread)
The probes restricted to async content process launch don't have "async"
in the name because that will eventually become the only kind of content
process launch.
Depends on D8943
Differential Revision:
https://phabricator.services.mozilla.com/D8944
80116391b7fe48cb2ecc1960721d74dc2c185c6a: Bug 1446161 - Asynchronously launch preallocated content processes using MozPromise. r=mccr8
Jed Davis <jld@mozilla.com> - Thu, 22 Nov 2018 00:35:53 +0000 - rev 448140
Push
73728 by jedavis@mozilla.com at Tue, 27 Nov 2018 02:48:57 +0000
Bug 1446161 - Asynchronously launch preallocated content processes using MozPromise. r=mccr8
There are several layers to this patch:
1. GeckoChildProcessHost now exposes a promise that's resolved when
the process handle is available (or rejected if launch failed), as a
nonblocking alternative to LaunchAndWaitForProcessHandle.
2. ContentParent builds on this with the private method
LaunchSubprocessAsync and the public method PreallocateProcessAsync;
synchronous launch continues to exist for the regular on-demand launch
path, for the time being.
3. PreallocatedProcessManager now uses async launch, and handles the new
"launch in progress" state appropriately.
Depends on D8942
Differential Revision:
https://phabricator.services.mozilla.com/D8943
1bdf64b29121762bbf6b1e13df1828034b149bac: Bug 1446161 - Remove the earlier attempt at async launch. r=spohl,mccr8
Jed Davis <jld@mozilla.com> - Thu, 22 Nov 2018 00:06:14 +0000 - rev 448139
Push
73728 by jedavis@mozilla.com at Tue, 27 Nov 2018 02:48:57 +0000
Bug 1446161 - Remove the earlier attempt at async launch. r=spohl,mccr8
The first attempt at async launch tried to hide the asynchrony inside
IPC, by making the process seem to be launched enough to construct new
channels and send it messages, and lazily blocking on the pid/handle.
Unfortunately, in practice we wind up needing the pid/handle immediately,
and this requirement is too deeply embedded in IPC for that to be viable.
(The alternative that will be used instead -- exposing process launch via
an explicitly asynchronous promise interface -- is made simpler by
Project Fission's upcoming rewrite of how the DOM requests new content
processes.)
Depends on D8941
Differential Revision:
https://phabricator.services.mozilla.com/D8942
37bf52f0e9cf2ccd4427197a2e99f40c239f01a7: Bug 1446161 - Remove CONTENT_PROCESS_LAUNCH_TIME_MS telemetry. r=mconley,chutten
Jed Davis <jld@mozilla.com> - Thu, 22 Nov 2018 20:21:03 +0000 - rev 448138
Push
73728 by jedavis@mozilla.com at Tue, 27 Nov 2018 02:48:57 +0000
Bug 1446161 - Remove CONTENT_PROCESS_LAUNCH_TIME_MS telemetry. r=mconley,chutten
The CONTENT_PROCESS_LAUNCH_TIME_MS histogram is currently gathering times
from two different spans of the launch process and mixing them together;
it's at best a rough approximation of "launch time".
In addition, with async launch we'll want to gather different metrics
than for sync launch (see comments on
bug 1474991).
So I'm removing this histogram and will replace it with separate sync and
async metrics in
bug 1474991; I intend to land both bugs' patches at or
near the same time, so we won't have a gap in getting some kind of data.
Depends on D8940
Differential Revision:
https://phabricator.services.mozilla.com/D8941
8ede2ebe6b7ab639e729614cb3609776955a6bc2: Bug 1496608 - Don't leak GeckoChildProcessHost when a content process fails to launch. r=mccr8
Jed Davis <jld@mozilla.com> - Thu, 22 Nov 2018 00:06:09 +0000 - rev 448137
Push
73728 by jedavis@mozilla.com at Tue, 27 Nov 2018 02:48:57 +0000
Bug 1496608 - Don't leak GeckoChildProcessHost when a content process fails to launch. r=mccr8
Depends on D8939
Differential Revision:
https://phabricator.services.mozilla.com/D8940
cea43bc88c7a564f0ca72995f6eac6b0d118f3f1: Bug 1488993 - Fix PreallocatedProcessManager blocker management (v2). r=mconley,smaug
Jed Davis <jld@mozilla.com> - Thu, 22 Nov 2018 00:06:07 +0000 - rev 448136
Push
73728 by jedavis@mozilla.com at Tue, 27 Nov 2018 02:48:57 +0000
Bug 1488993 - Fix PreallocatedProcessManager blocker management (v2). r=mconley,smaug
This fixes/adjusts two things about how content process preallocation is blocked:
1. Processes aren't registered as blockers until after they launch
successfully. The main goal is to not leak a blocker if launch fails,
but we don't need to block *while* launching synchronously, because this
all happens on the main thread.
2. Preallocated processes themselves aren't blockers. The main goal
here is so that async preallocation doesn't need extra complexity to
avoid being blocked by itself when launch completes. This mostly
doesn't affect actual behavior, because we currently support at most
one preallocated process. The difference is the window from when the
process is sent its first PBrowserConstructor until when it's next idle,
where there is now no longer a blocker, but this seems to be relatively
short (~100ms) and we don't even try to launch a new process until at
least 1s + an idle runnable.
This patch does not explicitly RemoveBlocker in ActorDestroy like the
first attempt did, because it's unnecessary: this is handled in the
ipc:content-shutdown observer.
Differential Revision:
https://phabricator.services.mozilla.com/D8939
fe77c09dee3107e675162b760a6efa9b5f0bcce3: Bug 1159042 - p6. Use NS_FRAME_DYNAMIC_REFLOW_ROOT - r=dholbert
L. David Baron <dbaron@dbaron.org> - Sun, 25 Nov 2018 23:18:19 +0000 - rev 448135
Push
73727 by gsquelart@mozilla.com at Tue, 27 Nov 2018 02:22:07 +0000
Bug 1159042 - p6. Use NS_FRAME_DYNAMIC_REFLOW_ROOT - r=dholbert
Differential Revision:
https://phabricator.services.mozilla.com/D9492