arc: Remove native_bridge_64bit_support_experiment
native_bridge_64bit_support_experiment has expired, and is no longer
useful. Remove the flag and the associated code.
BUG=b:233107740
TEST=ARC boots
Change-Id: Idae7ee3025aae2a586313401b5d8a1512d1bad51
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3656433
Reviewed-by: Gabriel Charette <[email protected]>
Reviewed-by: Yuichiro Hanada <[email protected]>
Commit-Queue: Josh Horwich <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1008015}
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
index c0baf37..fb08045 100644
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -4872,11 +4872,6 @@
{"arc-native-bridge-toggle", flag_descriptions::kArcNativeBridgeToggleName,
flag_descriptions::kArcNativeBridgeToggleDescription, kOsCrOS,
FEATURE_VALUE_TYPE(arc::kNativeBridgeToggleFeature)},
- {"arc-native-bridge-64bit-support-experiment",
- flag_descriptions::kArcNativeBridge64BitSupportExperimentName,
- flag_descriptions::kArcNativeBridge64BitSupportExperimentDescription,
- kOsCrOS,
- FEATURE_VALUE_TYPE(arc::kNativeBridge64BitSupportExperimentFeature)},
{"arc-right-click-long-press",
flag_descriptions::kArcRightClickLongPressName,
flag_descriptions::kArcRightClickLongPressDescription, kOsCrOS,
diff --git a/chrome/browser/ash/arc/session/arc_session_manager.cc b/chrome/browser/ash/arc/session/arc_session_manager.cc
index 6ef5aad..33731ec2 100644
--- a/chrome/browser/ash/arc/session/arc_session_manager.cc
+++ b/chrome/browser/ash/arc/session/arc_session_manager.cc
@@ -1808,30 +1808,14 @@
// For ARCVM, generate <dest_path>/{combined.prop,fstab}. For ARC, generate
// <dest_path>/{default,build,vendor_build}.prop.
const bool is_arcvm = arc::IsArcVmEnabled();
- bool add_native_bridge_64bit_support = false;
- if (base::CommandLine::ForCurrentProcess()->HasSwitch(
- ash::switches::kArcEnableNativeBridge64BitSupportExperiment)) {
- PrefService* local_pref_service = g_browser_process->local_state();
- if (base::FeatureList::IsEnabled(
- arc::kNativeBridge64BitSupportExperimentFeature)) {
- // Note that we treat this experiment as a one-way off->on switch, across
- // all users of the device, as the lifetime of ARC mini-container and user
- // sessions are different in different scenarios, and removing the
- // experiment after it has been in effect for a user's ARC instance can
- // lead to unexpected, and unsupported, results.
- local_pref_service->SetBoolean(
- prefs::kNativeBridge64BitSupportExperimentEnabled, true);
- }
- add_native_bridge_64bit_support = local_pref_service->GetBoolean(
- prefs::kNativeBridge64BitSupportExperimentEnabled);
- }
std::deque<JobDesc> jobs = {
JobDesc{kArcPrepareHostGeneratedDirJobName,
UpstartOperation::JOB_START,
{std::string("IS_ARCVM=") + (is_arcvm ? "1" : "0"),
- std::string("ADD_NATIVE_BRIDGE_64BIT_SUPPORT=") +
- (add_native_bridge_64bit_support ? "1" : "0")}},
+ // TODO(b/233107740) Remove this once crrev.com/c/3656121 has
+ // landed.
+ std::string("ADD_NATIVE_BRIDGE_64BIT_SUPPORT=0")}},
};
ConfigureUpstartJobs(std::move(jobs),
base::BindOnce(&ArcSessionManager::OnExpandPropertyFiles,
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
index a0ad00f..67add1e 100644
--- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json
@@ -226,13 +226,6 @@
"expiry_milestone": 108
},
{
- "name": "arc-native-bridge-64bit-support-experiment",
- "owners": [ "jhorwich" ],
- // Used on ChromeOS to experimentally enable 64-bit ARC native-bridge
- // support before promoting it to enabled on a specific device class.
- "expiry_milestone": 93
- },
- {
"name": "arc-native-bridge-toggle",
"owners": [ "[email protected]" ],
// Used on ChromeOS to compare and debug different ARC native-bridge
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
index 4e5bfe9..cccb559 100644
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -4213,11 +4213,6 @@
const char kArcNativeBridgeToggleDescription[] =
"Toggle between native bridge implementations for ARC.";
-const char kArcNativeBridge64BitSupportExperimentName[] =
- "Enable experimental 64-bit native bridge support for ARC";
-const char kArcNativeBridge64BitSupportExperimentDescription[] =
- "Enable experimental 64-bit native bridge support for ARC where available.";
-
const char kArcRightClickLongPressName[] =
"Enable ARC right click long press compatibility feature.";
const char kArcRightClickLongPressDescription[] =
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
index 0cdbcea..d5b38936 100644
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -2410,9 +2410,6 @@
extern const char kArcNativeBridgeToggleName[];
extern const char kArcNativeBridgeToggleDescription[];
-extern const char kArcNativeBridge64BitSupportExperimentName[];
-extern const char kArcNativeBridge64BitSupportExperimentDescription[];
-
extern const char kArcRightClickLongPressName[];
extern const char kArcRightClickLongPressDescription[];
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
index 10ed54b..8f3e3bc 100644
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -750,6 +750,12 @@
const char kColorModeThemed[] = "ash.dark_mode.color_mode_themed";
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
+#if BUILDFLAG(IS_CHROMEOS_ASH)
+// Deprecated 05/2022.
+const char kNativeBridge64BitSupportExperimentEnabled[] =
+ "arc.native_bridge_64bit_support_experiment";
+#endif // BUILDFLAG(IS_CHROMEOS_ASH)
+
// Register local state used only for migration (clearing or moving to a new
// key).
void RegisterLocalStatePrefsForMigration(PrefRegistrySimple* registry) {
@@ -798,6 +804,11 @@
#if !BUILDFLAG(IS_ANDROID)
registry->RegisterIntegerPref(kStabilityRendererLaunchCount, 0);
#endif // !BUILDFLAG(IS_ANDROID)
+
+#if BUILDFLAG(IS_CHROMEOS_ASH)
+ registry->RegisterBooleanPref(kNativeBridge64BitSupportExperimentEnabled,
+ false);
+#endif // BUILDFLAG(IS_CHROMEOS_ASH)
}
// Register prefs used only for migration (clearing or moving to a new key).
@@ -1652,6 +1663,11 @@
local_state->ClearPref(prefs::kTabFreezingEnabled);
#endif
+#if BUILDFLAG(IS_CHROMEOS_ASH)
+ // Added 05/2022.
+ local_state->ClearPref(kNativeBridge64BitSupportExperimentEnabled);
+#endif // BUILDFLAG(IS_CHROMEOS_ASH)
+
// Please don't delete the following line. It is used by PRESUBMIT.py.
// END_MIGRATE_OBSOLETE_LOCAL_STATE_PREFS