From eef2a703ade9bdffa922842e6ce67fad68249688 Mon Sep 17 00:00:00 2001 From: Tom Cherry Date: Wed, 15 May 2019 11:09:49 -0700 Subject: [PATCH] init: always initialize device-mapper Device-mapper is required already, so drop the conditionals for trying to load it. GetRootEntry() was depending on its existance, so this adds the required dependency. Bug: 131747478 Test: boot without any verity/avb/dm-linear devices. Change-Id: Ifc89d3b338e2c2b8faaf1c24e2792c1eeb5bbbde --- init/first_stage_mount.cpp | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/init/first_stage_mount.cpp b/init/first_stage_mount.cpp index 85fa87496..1a5ed2847 100644 --- a/init/first_stage_mount.cpp +++ b/init/first_stage_mount.cpp @@ -276,14 +276,12 @@ bool FirstStageMount::GetDmLinearMetadataDevice() { // required_devices_partition_names_. Found partitions will then be removed from it // for the subsequent member function to check which devices are NOT created. bool FirstStageMount::InitRequiredDevices() { - if (required_devices_partition_names_.empty()) { - return true; + if (!InitDeviceMapper()) { + return false; } - if (IsDmLinearEnabled() || need_dm_verity_) { - if (!InitDeviceMapper()) { - return false; - } + if (required_devices_partition_names_.empty()) { + return true; } auto uevent_callback = [this](const Uevent& uevent) { return UeventCallback(uevent); }; @@ -604,12 +602,6 @@ void FirstStageMount::UseGsiIfPresent() { return; } - // Device-mapper might not be ready if the device doesn't use DAP or verity - // (for example, hikey). - if (access("/dev/device-mapper", F_OK) && !InitDeviceMapper()) { - return; - } - // Find the name of the super partition for the GSI. It will either be // "userdata", or a block device such as an sdcard. There are no by-name // partitions other than userdata that we support installing GSIs to.