Bug 1369399 - Re-enable e10s for DevEdition. r=Felipe
authorBlake Kaplan <mrbkap@gmail.com>
Tue, 06 Jun 2017 15:35:07 -0700
changeset 410890 85b383c5a7a8b187d71e7706fe4c38efb5f243bc
parent 410889 9581f9e1b988c7320589effa3aefda47b51c8aca
child 410891 c6ab7e1a315b392582236faf9235218aa9e344f0
push id7391
push usermtabara@mozilla.com
push dateMon, 12 Jun 2017 13:08:53 +0000
treeherdermozilla-beta@2191d7f87e2e [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersFelipe
bugs1369399
milestone55.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1369399 - Re-enable e10s for DevEdition. r=Felipe I thought of fixing this in the e10srollout addon because DevEdition is now built off of Beta, but it would only serve to complicate the addon even more and expose us to more risk every time we touch it. Also, DevEdition stayed on the Aurora update channel and who knows if we're going to change that in the future. Special casing DevEdition (via AppConstants) is possible, but it was going to get messy pretty quickly. This is probably the most straightforward way to make this all work. MozReview-Commit-ID: 6WPjBawUutz
browser/app/profile/firefox.js
modules/libpref/init/all.js
--- a/browser/app/profile/firefox.js
+++ b/browser/app/profile/firefox.js
@@ -992,20 +992,16 @@ pref("dom.ipc.plugins.flash.disable-prot
 // Feature-disable the protected-mode auto-flip
 pref("browser.flash-protected-mode-flip.enable", false);
 
 // Whether we've already flipped protected mode automatically
 pref("browser.flash-protected-mode-flip.done", false);
 
 pref("dom.ipc.shims.enabledWarnings", false);
 
-// Start the browser in e10s mode
-pref("browser.tabs.remote.autostart", false);
-pref("browser.tabs.remote.desktopbehavior", true);
-
 #if defined(XP_WIN) && defined(MOZ_SANDBOX)
 // Controls whether and how the Windows NPAPI plugin process is sandboxed.
 // To get a different setting for a particular plugin replace "default", with
 // the plugin's nice file name, see: nsPluginTag::GetNiceFileName.
 // On windows these levels are:
 // 0 - no sandbox
 // 1 - sandbox with USER_NON_ADMIN access token level
 // 2 - a more strict sandbox, which might cause functionality issues. This now
@@ -1512,17 +1508,21 @@ pref("privacy.userContext.longPressBehav
 pref("privacy.userContext.enabled", false);
 pref("privacy.userContext.ui.enabled", false);
 pref("privacy.usercontext.about_newtab_segregation.enabled", false);
 
 // 0 disables long press, 1 when clicked, the menu is shown, 2 the menu is shown after X milliseconds.
 pref("privacy.userContext.longPressBehavior", 0);
 #endif
 
-#ifndef RELEASE_OR_BETA
+// Start the browser in e10s mode
+pref("browser.tabs.remote.autostart", false);
+pref("browser.tabs.remote.desktopbehavior", true);
+
+#if !defined(RELEASE_OR_BETA) || defined(MOZ_DEV_EDITION)
 // At the moment, autostart.2 is used, while autostart.1 is unused.
 // We leave it here set to false to reset users' defaults and allow
 // us to change everybody to true in the future, when desired.
 pref("browser.tabs.remote.autostart.1", false);
 pref("browser.tabs.remote.autostart.2", true);
 #endif
 
 // For the about:tabcrashed page
--- a/modules/libpref/init/all.js
+++ b/modules/libpref/init/all.js
@@ -3137,17 +3137,19 @@ pref("dom.ipc.plugins.unloadTimeoutSecs"
 // Asynchronous plugin initialization is on hold.
 pref("dom.ipc.plugins.asyncInit.enabled", false);
 
 // Allow Flash async drawing mode in 64-bit release builds
 pref("dom.ipc.plugins.asyncdrawing.enabled", true);
 // Force the accelerated direct path for a subset of Flash wmode values
 pref("dom.ipc.plugins.forcedirect.enabled", true);
 
-#ifdef RELEASE_OR_BETA
+// Enable multi by default for Nightly and DevEdition only.
+// For Beta and Release builds, multi is controlled by the e10srollout addon.
+#if defined(RELEASE_OR_BETA) && !defined(MOZ_DEV_EDITION)
 pref("dom.ipc.processCount", 1);
 #else
 pref("dom.ipc.processCount", 4);
 #endif
 
 // Default to allow only one file:// URL content process.
 pref("dom.ipc.processCount.file", 1);