[MTE] Add device config to control upgrade time

Bug: 169277947
Change-Id: I67eb94a668e60a2970bb086f82cc69396275340a
This commit is contained in:
Florian Mayer 2022-09-15 18:10:54 -07:00
parent 61c82abe24
commit caa7a60e2d

View file

@ -331,9 +331,18 @@ void Service::Reap(const siginfo_t& siginfo) {
!upgraded_mte_;
if (should_upgrade_mte) {
LOG(INFO) << "Upgrading service " << name_ << " to sync MTE";
once_environment_vars_.emplace_back("BIONIC_MEMTAG_UPGRADE_SECS", "60");
upgraded_mte_ = true;
constexpr int kDefaultUpgradeSecs = 60;
int secs = GetIntProperty("persist.device_config.memory_safety_native.upgrade_secs.default",
kDefaultUpgradeSecs);
secs = GetIntProperty(
"persist.device_config.memory_safety_native.upgrade_secs.service." + name_, secs);
if (secs > 0) {
LOG(INFO) << "Upgrading service " << name_ << " to sync MTE for " << secs << " seconds";
once_environment_vars_.emplace_back("BIONIC_MEMTAG_UPGRADE_SECS", std::to_string(secs));
upgraded_mte_ = true;
} else {
LOG(INFO) << "Not upgrading service " << name_ << " to sync MTE due to device config";
}
}
#endif