diff --git a/fs_mgr/fs_mgr_verity.cpp b/fs_mgr/fs_mgr_verity.cpp index e8ed6a2aa..54a6f71c7 100644 --- a/fs_mgr/fs_mgr_verity.cpp +++ b/fs_mgr/fs_mgr_verity.cpp @@ -30,6 +30,7 @@ #include #include +#include #include #include #include @@ -874,6 +875,11 @@ int fs_mgr_setup_verity(struct fstab_rec *fstab, bool wait_for_verity_dev) // read verity metadata if (fec_verity_get_metadata(f, &verity) < 0) { PERROR << "Failed to get verity metadata '" << fstab->blk_device << "'"; + // Allow verity disabled when the device is unlocked without metadata + if ("0" == android::base::GetProperty("ro.boot.flash.locked", "")) { + retval = FS_MGR_SETUP_VERITY_DISABLED; + LWARNING << "Allow invalid metadata when the device is unlocked"; + } goto out; }