Re-enable UFFD GC for the February train, but with a different flag.

Test: Presubmit
Merged-In: I163f808399eb27393e00dbb149d5941ff3db277f
Change-Id: I5f8ea63d75f48dddac625c3a675795b278a8e105
diff --git a/odrefresh/odr_config.h b/odrefresh/odr_config.h
index 5c3f4ee..fab50e9 100644
--- a/odrefresh/odr_config.h
+++ b/odrefresh/odr_config.h
@@ -68,6 +68,9 @@
 const android::base::NoDestructor<std::vector<SystemPropertyConfig>> kSystemProperties{
     {SystemPropertyConfig{.name = "persist.device_config.runtime_native_boot.enable_uffd_gc",
                           .default_value = "false"},
+     SystemPropertyConfig{
+         .name = "persist.device_config.runtime_native_boot.enable_uffd_gc_feb2023",
+         .default_value = "false"},
      SystemPropertyConfig{.name = kPhDisableCompactDex, .default_value = "false"}}};
 
 // An enumeration of the possible zygote configurations on Android.
diff --git a/runtime/gc/collector/mark_compact.cc b/runtime/gc/collector/mark_compact.cc
index 4f16ca1..e1967e3 100644
--- a/runtime/gc/collector/mark_compact.cc
+++ b/runtime/gc/collector/mark_compact.cc
@@ -137,7 +137,10 @@
   return gc_type;
 }
 
-static bool SysPropSaysUffdGc() { return false; }
+static bool SysPropSaysUffdGc() {
+  return GetBoolProperty("persist.device_config.runtime_native_boot.enable_uffd_gc_feb2023",
+                         GetBoolProperty("ro.dalvik.vm.enable_uffd_gc", false));
+}
 
 static bool ShouldUseUserfaultfd() {
   static_assert(kUseBakerReadBarrier || kUseTableLookupReadBarrier);