Bug 1406212 - Remove browser.tabs.remote.autostart.N. r=Felipe draft
authorBlake Kaplan <mrbkap@gmail.com>
Tue, 10 Oct 2017 16:12:20 -0700
changeset 682785 3e714e0f619cc24fe840cc2c7e1d25b3f7a12083
parent 682784 a3ec50b87308edd02bfd370b7b41f804c8594c0c
child 682786 54da187ad8b1df8474ecd9ffdaf86a527ac2fad3
push id85144
push userbmo:mrbkap@mozilla.com
push dateWed, 18 Oct 2017 18:39:48 +0000
reviewersFelipe
bugs1406212
milestone58.0a1
Bug 1406212 - Remove browser.tabs.remote.autostart.N. r=Felipe These are no longer needed. MozReview-Commit-ID: C49R7GsWPDg
browser/app/profile/firefox.js
layout/tools/reftest/reftest-preferences.js
testing/marionette/client/marionette_driver/geckoinstance.py
testing/profiles/prefs_general.js
testing/talos/talos/config.py
toolkit/xre/nsAppRunner.cpp
--- a/browser/app/profile/firefox.js
+++ b/browser/app/profile/firefox.js
@@ -1550,24 +1550,16 @@ pref("privacy.usercontext.about_newtab_s
 pref("privacy.userContext.longPressBehavior", 0);
 #endif
 pref("privacy.userContext.extension", "");
 
 // Start the browser in e10s mode
 pref("browser.tabs.remote.autostart", true);
 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 speculatively warming up tabs to improve perceived
 // performance while using the async tab switcher.
 // Disabled until bug 1397426 is fixed.
 pref("browser.tabs.remote.warmup.enabled", false);
 pref("browser.tabs.remote.warmup.maxTabs", 3);
 pref("browser.tabs.remote.warmup.unloadDelayMs", 2000);
 
 // For the about:tabcrashed page
--- a/layout/tools/reftest/reftest-preferences.js
+++ b/layout/tools/reftest/reftest-preferences.js
@@ -117,18 +117,17 @@ user_pref("browser.newtabpage.directory.
 // Only allow add-ons from the profile and app and allow foreign
 // injection
 user_pref("extensions.enabledScopes", 5);
 user_pref("extensions.autoDisableScopes", 0);
 // Allow unsigned add-ons
 user_pref("xpinstall.signatures.required", false);
 
 // Don't use auto-enabled e10s
-user_pref("browser.tabs.remote.autostart.1", false);
-user_pref("browser.tabs.remote.autostart.2", false);
+user_pref("browser.tabs.remote.autostart", false);
 
 user_pref("startup.homepage_welcome_url", "");
 user_pref("startup.homepage_welcome_url.additional", "");
 user_pref("startup.homepage_override_url", "");
 
 user_pref("media.gmp-manager.url.override", "http://localhost/dummy-gmp-manager.xml");
 user_pref("media.gmp-manager.updateEnabled", false);
 
--- a/testing/marionette/client/marionette_driver/geckoinstance.py
+++ b/testing/marionette/client/marionette_driver/geckoinstance.py
@@ -303,18 +303,16 @@ class FennecInstance(GeckoInstance):
         "browser.safebrowsing.passwords.enabled": False,
         "browser.safebrowsing.malware.enabled": False,
         "browser.safebrowsing.phishing.enabled": False,
 
         # Do not restore the last open set of tabs if the browser has crashed
         "browser.sessionstore.resume_from_crash": False,
 
         # Disable e10s by default
-        "browser.tabs.remote.autostart.1": False,
-        "browser.tabs.remote.autostart.2": False,
         "browser.tabs.remote.autostart": False,
 
         # Do not allow background tabs to be zombified, otherwise for tests that
         # open additional tabs, the test harness tab itself might get unloaded
         "browser.tabs.disableBackgroundZombification": True,
     }
 
     def __init__(self, emulator_binary=None, avd_home=None, avd=None,
@@ -448,18 +446,16 @@ class DesktopInstance(GeckoInstance):
 
         # Do not restore the last open set of tabs if the browser has crashed
         "browser.sessionstore.resume_from_crash": False,
 
         # Don't check for the default web browser during startup
         "browser.shell.checkDefaultBrowser": False,
 
         # Disable e10s by default
-        "browser.tabs.remote.autostart.1": False,
-        "browser.tabs.remote.autostart.2": False,
         "browser.tabs.remote.autostart": False,
 
         # Needed for branded builds to prevent opening a second tab on startup
         "browser.startup.homepage_override.mstone": "ignore",
         # Start with a blank page by default
         "browser.startup.page": 0,
 
         # Disable browser animations
--- a/testing/profiles/prefs_general.js
+++ b/testing/profiles/prefs_general.js
@@ -336,18 +336,17 @@ user_pref("media.eme.enabled", true);
 // Set the number of shmems the PChromiumCDM protocol pre-allocates to 0,
 // so that we test the case where we under-estimate how many shmems we need
 // to send decoded video frames from the CDM to Gecko.
 user_pref("media.eme.chromium-api.video-shmems", 0);
 
 user_pref("media.autoplay.enabled", true);
 
 // Don't use auto-enabled e10s
-user_pref("browser.tabs.remote.autostart.1", false);
-user_pref("browser.tabs.remote.autostart.2", false);
+user_pref("browser.tabs.remote.autostart", false);
 // Don't show a delay when hiding the audio indicator during tests
 user_pref("browser.tabs.delayHidingAudioPlayingIconMS", 0);
 // Don't forceably kill content processes after a timeout
 user_pref("dom.ipc.tabs.shutdownTimeoutSecs", 0);
 
 // Don't block add-ons for e10s
 user_pref("extensions.e10sBlocksEnabling", false);
 
--- a/testing/talos/talos/config.py
+++ b/testing/talos/talos/config.py
@@ -291,18 +291,16 @@ def set_webserver(config):
 @validator
 def update_prefs(config):
     # if e10s is enabled, set prefs accordingly
     if config['e10s']:
         config['preferences']['browser.tabs.remote.autostart'] = True
         config['preferences']['extensions.e10sBlocksEnabling'] = False
     else:
         config['preferences']['browser.tabs.remote.autostart'] = False
-        config['preferences']['browser.tabs.remote.autostart.1'] = False
-        config['preferences']['browser.tabs.remote.autostart.2'] = False
 
     # update prefs from command line
     prefs = config.pop('extraPrefs')
     if prefs:
         for arg in prefs:
             k, v = arg.split('=', 1)
             config['preferences'][k] = utils.parse_pref(v)
 
--- a/toolkit/xre/nsAppRunner.cpp
+++ b/toolkit/xre/nsAppRunner.cpp
@@ -5149,59 +5149,47 @@ BrowserTabsRemoteAutostart()
   gBrowserTabsRemoteAutostartInitialized = true;
 
   // If we're in the content process, we are running E10S.
   if (XRE_IsContentProcess()) {
     gBrowserTabsRemoteAutostart = true;
     return gBrowserTabsRemoteAutostart;
   }
 
-  bool optInPref = Preferences::GetBool("browser.tabs.remote.autostart", false);
-  bool trialPref = Preferences::GetBool("browser.tabs.remote.autostart.2", false);
-  bool prefEnabled = optInPref || trialPref;
-  int status;
+  bool optInPref = Preferences::GetBool("browser.tabs.remote.autostart", true);
+  int status = kE10sEnabledByDefault;
+
   if (optInPref) {
-    status = kE10sEnabledByUser;
-  } else if (trialPref) {
-    status = kE10sEnabledByDefault;
-  } else {
-    status = kE10sDisabledByUser;
-  }
-
-  if (prefEnabled) {
     uint32_t blockPolicy = MultiprocessBlockPolicy();
     if (blockPolicy != 0) {
       status = blockPolicy;
     } else {
       gBrowserTabsRemoteAutostart = true;
     }
+  } else {
+    status = kE10sDisabledByUser;
   }
 
   // Uber override pref for manual testing purposes
   if (Preferences::GetBool(kForceEnableE10sPref, false)) {
     gBrowserTabsRemoteAutostart = true;
-    prefEnabled = true;
     status = kE10sEnabledByUser;
   }
 
   // Uber override pref for emergency blocking
   if (gBrowserTabsRemoteAutostart &&
       (Preferences::GetBool(kForceDisableE10sPref, false) ||
        EnvHasValue("MOZ_FORCE_DISABLE_E10S"))) {
     gBrowserTabsRemoteAutostart = false;
     status = kE10sForceDisabled;
   }
 
   gBrowserTabsRemoteStatus = status;
 
   mozilla::Telemetry::Accumulate(mozilla::Telemetry::E10S_STATUS, status);
-  if (prefEnabled) {
-    mozilla::Telemetry::Accumulate(mozilla::Telemetry::E10S_BLOCKED_FROM_RUNNING,
-                                    !gBrowserTabsRemoteAutostart);
-  }
   return gBrowserTabsRemoteAutostart;
 }
 
 uint32_t
 GetMaxWebProcessCount()
 {
   // multiOptOut is in int to allow us to run multiple experiments without
   // introducing multiple prefs a la the autostart.N prefs.