Loading fs_mgr/fs_mgr.cpp +3 −2 Original line number Diff line number Diff line Loading @@ -1006,7 +1006,8 @@ int fs_mgr_mount_all(fstab* fstab, int mount_mode) { /* Don't mount entries that are managed by vold or not for the mount mode*/ if ((fstab->recs[i].fs_mgr_flags & (MF_VOLDMANAGED | MF_RECOVERYONLY)) || ((mount_mode == MOUNT_MODE_LATE) && !fs_mgr_is_latemount(&fstab->recs[i])) || ((mount_mode == MOUNT_MODE_EARLY) && fs_mgr_is_latemount(&fstab->recs[i]))) { ((mount_mode == MOUNT_MODE_EARLY) && fs_mgr_is_latemount(&fstab->recs[i])) || fs_mgr_is_first_stage_mount(&fstab->recs[i])) { continue; } Loading fs_mgr/fs_mgr_fstab.cpp +6 −1 Original line number Diff line number Diff line Loading @@ -57,7 +57,7 @@ struct fs_mgr_flag_values { struct flag_list { const char *name; int flag; unsigned int flag; }; static struct flag_list mount_flags[] = { Loading Loading @@ -102,6 +102,7 @@ static struct flag_list fs_mgr_flags[] = { {"formattable", MF_FORMATTABLE}, {"slotselect", MF_SLOTSELECT}, {"nofail", MF_NOFAIL}, {"first_stage_mount", MF_FIRST_STAGE_MOUNT}, {"latemount", MF_LATEMOUNT}, {"reservedsize=", MF_RESERVEDSIZE}, {"quota", MF_QUOTA}, Loading Loading @@ -998,6 +999,10 @@ int fs_mgr_is_nofail(const struct fstab_rec* fstab) { return fstab->fs_mgr_flags & MF_NOFAIL; } int fs_mgr_is_first_stage_mount(const struct fstab_rec* fstab) { return fstab->fs_mgr_flags & MF_FIRST_STAGE_MOUNT; } int fs_mgr_is_latemount(const struct fstab_rec* fstab) { return fstab->fs_mgr_flags & MF_LATEMOUNT; } Loading fs_mgr/fs_mgr_overlayfs.cpp +4 −5 Original line number Diff line number Diff line Loading @@ -74,7 +74,7 @@ bool fs_mgr_overlayfs_mount_all(fstab*) { return false; } bool fs_mgr_overlayfs_mount_all(const std::vector<const fstab_rec*>&) { bool fs_mgr_overlayfs_mount_all(const std::vector<fstab_rec*>&) { return false; } Loading @@ -82,7 +82,7 @@ std::vector<std::string> fs_mgr_overlayfs_required_devices(fstab*) { return {}; } std::vector<std::string> fs_mgr_overlayfs_required_devices(const std::vector<const fstab_rec*>&) { std::vector<std::string> fs_mgr_overlayfs_required_devices(const std::vector<fstab_rec*>&) { return {}; } Loading Loading @@ -805,7 +805,7 @@ bool fs_mgr_overlayfs_mount_all(fstab* fstab) { return ret; } bool fs_mgr_overlayfs_mount_all(const std::vector<const fstab_rec*>& fsrecs) { bool fs_mgr_overlayfs_mount_all(const std::vector<fstab_rec*>& fsrecs) { std::vector<fstab_rec> recs; for (const auto& rec : fsrecs) recs.push_back(*rec); fstab fstab = {static_cast<int>(fsrecs.size()), &recs[0]}; Loading @@ -828,8 +828,7 @@ std::vector<std::string> fs_mgr_overlayfs_required_devices(fstab* fstab) { return {}; } std::vector<std::string> fs_mgr_overlayfs_required_devices( const std::vector<const fstab_rec*>& fsrecs) { std::vector<std::string> fs_mgr_overlayfs_required_devices(const std::vector<fstab_rec*>& fsrecs) { std::vector<fstab_rec> recs; for (const auto& rec : fsrecs) recs.push_back(*rec); fstab fstab = {static_cast<int>(fsrecs.size()), &recs[0]}; Loading fs_mgr/fs_mgr_priv.h +2 −0 Original line number Diff line number Diff line Loading @@ -118,6 +118,8 @@ #define MF_LOGICAL 0x10000000 #define MF_CHECKPOINT_BLK 0x20000000 #define MF_CHECKPOINT_FS 0x40000000 #define MF_FIRST_STAGE_MOUNT \ 0x80000000 // clang-format on #define DM_BUF_SIZE 4096 Loading fs_mgr/include/fs_mgr_overlayfs.h +2 −3 Original line number Diff line number Diff line Loading @@ -22,10 +22,9 @@ #include <vector> bool fs_mgr_overlayfs_mount_all(fstab* fstab); bool fs_mgr_overlayfs_mount_all(const std::vector<const fstab_rec*>& fstab); bool fs_mgr_overlayfs_mount_all(const std::vector<fstab_rec*>& fstab); std::vector<std::string> fs_mgr_overlayfs_required_devices(fstab* fstab); std::vector<std::string> fs_mgr_overlayfs_required_devices( const std::vector<const fstab_rec*>& fstab); std::vector<std::string> fs_mgr_overlayfs_required_devices(const std::vector<fstab_rec*>& fstab); bool fs_mgr_overlayfs_setup(const char* backing = nullptr, const char* mount_point = nullptr, bool* change = nullptr); bool fs_mgr_overlayfs_teardown(const char* mount_point = nullptr, bool* change = nullptr); Loading Loading
fs_mgr/fs_mgr.cpp +3 −2 Original line number Diff line number Diff line Loading @@ -1006,7 +1006,8 @@ int fs_mgr_mount_all(fstab* fstab, int mount_mode) { /* Don't mount entries that are managed by vold or not for the mount mode*/ if ((fstab->recs[i].fs_mgr_flags & (MF_VOLDMANAGED | MF_RECOVERYONLY)) || ((mount_mode == MOUNT_MODE_LATE) && !fs_mgr_is_latemount(&fstab->recs[i])) || ((mount_mode == MOUNT_MODE_EARLY) && fs_mgr_is_latemount(&fstab->recs[i]))) { ((mount_mode == MOUNT_MODE_EARLY) && fs_mgr_is_latemount(&fstab->recs[i])) || fs_mgr_is_first_stage_mount(&fstab->recs[i])) { continue; } Loading
fs_mgr/fs_mgr_fstab.cpp +6 −1 Original line number Diff line number Diff line Loading @@ -57,7 +57,7 @@ struct fs_mgr_flag_values { struct flag_list { const char *name; int flag; unsigned int flag; }; static struct flag_list mount_flags[] = { Loading Loading @@ -102,6 +102,7 @@ static struct flag_list fs_mgr_flags[] = { {"formattable", MF_FORMATTABLE}, {"slotselect", MF_SLOTSELECT}, {"nofail", MF_NOFAIL}, {"first_stage_mount", MF_FIRST_STAGE_MOUNT}, {"latemount", MF_LATEMOUNT}, {"reservedsize=", MF_RESERVEDSIZE}, {"quota", MF_QUOTA}, Loading Loading @@ -998,6 +999,10 @@ int fs_mgr_is_nofail(const struct fstab_rec* fstab) { return fstab->fs_mgr_flags & MF_NOFAIL; } int fs_mgr_is_first_stage_mount(const struct fstab_rec* fstab) { return fstab->fs_mgr_flags & MF_FIRST_STAGE_MOUNT; } int fs_mgr_is_latemount(const struct fstab_rec* fstab) { return fstab->fs_mgr_flags & MF_LATEMOUNT; } Loading
fs_mgr/fs_mgr_overlayfs.cpp +4 −5 Original line number Diff line number Diff line Loading @@ -74,7 +74,7 @@ bool fs_mgr_overlayfs_mount_all(fstab*) { return false; } bool fs_mgr_overlayfs_mount_all(const std::vector<const fstab_rec*>&) { bool fs_mgr_overlayfs_mount_all(const std::vector<fstab_rec*>&) { return false; } Loading @@ -82,7 +82,7 @@ std::vector<std::string> fs_mgr_overlayfs_required_devices(fstab*) { return {}; } std::vector<std::string> fs_mgr_overlayfs_required_devices(const std::vector<const fstab_rec*>&) { std::vector<std::string> fs_mgr_overlayfs_required_devices(const std::vector<fstab_rec*>&) { return {}; } Loading Loading @@ -805,7 +805,7 @@ bool fs_mgr_overlayfs_mount_all(fstab* fstab) { return ret; } bool fs_mgr_overlayfs_mount_all(const std::vector<const fstab_rec*>& fsrecs) { bool fs_mgr_overlayfs_mount_all(const std::vector<fstab_rec*>& fsrecs) { std::vector<fstab_rec> recs; for (const auto& rec : fsrecs) recs.push_back(*rec); fstab fstab = {static_cast<int>(fsrecs.size()), &recs[0]}; Loading @@ -828,8 +828,7 @@ std::vector<std::string> fs_mgr_overlayfs_required_devices(fstab* fstab) { return {}; } std::vector<std::string> fs_mgr_overlayfs_required_devices( const std::vector<const fstab_rec*>& fsrecs) { std::vector<std::string> fs_mgr_overlayfs_required_devices(const std::vector<fstab_rec*>& fsrecs) { std::vector<fstab_rec> recs; for (const auto& rec : fsrecs) recs.push_back(*rec); fstab fstab = {static_cast<int>(fsrecs.size()), &recs[0]}; Loading
fs_mgr/fs_mgr_priv.h +2 −0 Original line number Diff line number Diff line Loading @@ -118,6 +118,8 @@ #define MF_LOGICAL 0x10000000 #define MF_CHECKPOINT_BLK 0x20000000 #define MF_CHECKPOINT_FS 0x40000000 #define MF_FIRST_STAGE_MOUNT \ 0x80000000 // clang-format on #define DM_BUF_SIZE 4096 Loading
fs_mgr/include/fs_mgr_overlayfs.h +2 −3 Original line number Diff line number Diff line Loading @@ -22,10 +22,9 @@ #include <vector> bool fs_mgr_overlayfs_mount_all(fstab* fstab); bool fs_mgr_overlayfs_mount_all(const std::vector<const fstab_rec*>& fstab); bool fs_mgr_overlayfs_mount_all(const std::vector<fstab_rec*>& fstab); std::vector<std::string> fs_mgr_overlayfs_required_devices(fstab* fstab); std::vector<std::string> fs_mgr_overlayfs_required_devices( const std::vector<const fstab_rec*>& fstab); std::vector<std::string> fs_mgr_overlayfs_required_devices(const std::vector<fstab_rec*>& fstab); bool fs_mgr_overlayfs_setup(const char* backing = nullptr, const char* mount_point = nullptr, bool* change = nullptr); bool fs_mgr_overlayfs_teardown(const char* mount_point = nullptr, bool* change = nullptr); Loading