From 167c2a658a37b24376702c19a2e83939736a88ed Mon Sep 17 00:00:00 2001 From: "P.Adarsh Reddy" Date: Thu, 16 Apr 2020 21:46:08 +0530 Subject: [PATCH] Acknowledge the 'nofail' fs_mgr flag and skip the expected failure. fs_mgr supports 'nofail' flag, which is used if we do not want to error-out incase the mounting/setup fails for a partition tagged with nofail flag in fstab. Recently added code in vold misses this handling, i.e. it aborts even for a nofail partition upon encountering an expected failure. Test: Add a non-existing logical partition fstab entry with 'nofail' flag. Init's first stage mount acks this and doesn't crash. Vold aborts (as it doesn't handle it), and device doesn't boot. With this change, device boots up. Change-Id: I2b1904a9c648c31bcc05b2e7e77480db236ff66e --- main.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/main.cpp b/main.cpp index 402ba0a..1f85fb5 100644 --- a/main.cpp +++ b/main.cpp @@ -242,7 +242,8 @@ static int process_config(VolumeManager* vm, VoldConfigs* configs) { } /* Make sure logical partitions have an updated blk_device. */ - if (entry.fs_mgr_flags.logical && !fs_mgr_update_logical_partition(&entry)) { + if (entry.fs_mgr_flags.logical && !fs_mgr_update_logical_partition(&entry) && + !entry.fs_mgr_flags.no_fail) { PLOG(FATAL) << "could not find logical partition " << entry.blk_device; }