diff options
author | Nikita Ioffe <ioffe@google.com> | 2019-12-04 17:47:37 +0000 |
---|---|---|
committer | Nikita Ioffe <ioffe@google.com> | 2019-12-04 17:47:37 +0000 |
commit | 1f40c94a1ffa5e406fd9626b52ee8f55b41dc944 (patch) | |
tree | c6287315c0fd5c8ed2f33bd40dae372f6de492b9 /init/builtins.cpp | |
parent | 57d7bb695b644db0674c37a4d7114f9ec65867ed (diff) |
FscryptInstallKeyring: don't re-create keyring if it's already created
During userspace reboot FscryptInstallKeyring will be called again, this
CL will make it second call a no-op, which IMHO is better than having a
special logic in init to conditionally call FscryptInstallKeyring
depending on whenever it's normal boot, or userspace reboot.
Test: adb reboot userspace
Test: checked in kernel logs that new keyring is not created
Bug: 135984674
Change-Id: I4ad5aee6887b7318fb1cd02bf1c7be8da6ece599
Diffstat (limited to 'init/builtins.cpp')
-rw-r--r-- | init/builtins.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/init/builtins.cpp b/init/builtins.cpp index 485806b90..98a980571 100644 --- a/init/builtins.cpp +++ b/init/builtins.cpp @@ -583,7 +583,7 @@ static Result<void> queue_fs_event(int code, bool userdata_remount) { return reboot_into_recovery(options); /* If reboot worked, there is no return. */ } else if (code == FS_MGR_MNTALL_DEV_FILE_ENCRYPTED) { - if (!userdata_remount && !FscryptInstallKeyring()) { + if (!FscryptInstallKeyring()) { return Error() << "FscryptInstallKeyring() failed"; } property_set("ro.crypto.state", "encrypted"); @@ -594,7 +594,7 @@ static Result<void> queue_fs_event(int code, bool userdata_remount) { ActionManager::GetInstance().QueueEventTrigger("nonencrypted"); return {}; } else if (code == FS_MGR_MNTALL_DEV_IS_METADATA_ENCRYPTED) { - if (!userdata_remount && !FscryptInstallKeyring()) { + if (!FscryptInstallKeyring()) { return Error() << "FscryptInstallKeyring() failed"; } property_set("ro.crypto.state", "encrypted"); @@ -605,7 +605,7 @@ static Result<void> queue_fs_event(int code, bool userdata_remount) { ActionManager::GetInstance().QueueEventTrigger("nonencrypted"); return {}; } else if (code == FS_MGR_MNTALL_DEV_NEEDS_METADATA_ENCRYPTION) { - if (!userdata_remount && !FscryptInstallKeyring()) { + if (!FscryptInstallKeyring()) { return Error() << "FscryptInstallKeyring() failed"; } property_set("ro.crypto.state", "encrypted"); |