Merge "Revert "fs_mgr_overlayfs: Revert to use /data only if VAB""
This commit is contained in:
commit
cc7ddc04f9
1 changed files with 8 additions and 8 deletions
|
|
@ -1108,7 +1108,7 @@ static bool CreateScratchOnData(std::string* scratch_device, bool* partition_exi
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool CanUseSuperPartition(const Fstab& fstab, bool* is_virtual_ab) {
|
static bool CanUseSuperPartition(const Fstab& fstab) {
|
||||||
auto slot_number = fs_mgr_overlayfs_slot_number();
|
auto slot_number = fs_mgr_overlayfs_slot_number();
|
||||||
auto super_device = fs_mgr_overlayfs_super_device(slot_number);
|
auto super_device = fs_mgr_overlayfs_super_device(slot_number);
|
||||||
if (!fs_mgr_rw_access(super_device) || !fs_mgr_overlayfs_has_logical(fstab)) {
|
if (!fs_mgr_rw_access(super_device) || !fs_mgr_overlayfs_has_logical(fstab)) {
|
||||||
|
|
@ -1118,7 +1118,6 @@ static bool CanUseSuperPartition(const Fstab& fstab, bool* is_virtual_ab) {
|
||||||
if (!metadata) {
|
if (!metadata) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
*is_virtual_ab = !!(metadata->header.flags & LP_HEADER_FLAG_VIRTUAL_AB_DEVICE);
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1131,12 +1130,13 @@ bool fs_mgr_overlayfs_create_scratch(const Fstab& fstab, std::string* scratch_de
|
||||||
return *partition_exists;
|
return *partition_exists;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool is_virtual_ab = false;
|
// Try ImageManager on /data first.
|
||||||
if (CanUseSuperPartition(fstab, &is_virtual_ab)) {
|
bool can_use_data = false;
|
||||||
bool can_use_data = false;
|
if (FilesystemHasReliablePinning("/data", &can_use_data) && can_use_data) {
|
||||||
if (is_virtual_ab && FilesystemHasReliablePinning("/data", &can_use_data) && can_use_data) {
|
return CreateScratchOnData(scratch_device, partition_exists);
|
||||||
return CreateScratchOnData(scratch_device, partition_exists);
|
}
|
||||||
}
|
// If that fails, see if we can land on super.
|
||||||
|
if (CanUseSuperPartition(fstab)) {
|
||||||
return CreateDynamicScratch(scratch_device, partition_exists);
|
return CreateDynamicScratch(scratch_device, partition_exists);
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue