Merge "Fix overlayfs on page cf page agnostic builds." into main am: 0edd0412f9

Original change: https://android-review.googlesource.com/c/platform/system/core/+/3323914

Change-Id: I699a3557b7b1a15e59d1afa64c17c0aaf471a68c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Treehugger Robot 2024-10-29 16:23:06 +00:00 committed by Automerger Merge Worker
commit 4028fa121b
3 changed files with 12 additions and 3 deletions

View file

@ -2316,6 +2316,14 @@ std::string fs_mgr_get_context(const std::string& mount_point) {
return context; return context;
} }
int fs_mgr_f2fs_ideal_block_size() {
#if defined(__i386__) || defined(__x86_64__)
return 4096;
#else
return getpagesize();
#endif
}
namespace android { namespace android {
namespace fs_mgr { namespace fs_mgr {

View file

@ -387,10 +387,8 @@ bool MakeScratchFilesystem(const std::string& scratch_device) {
auto command = ""s; auto command = ""s;
if (!access(kMkF2fs, X_OK) && fs_mgr_filesystem_available("f2fs")) { if (!access(kMkF2fs, X_OK) && fs_mgr_filesystem_available("f2fs")) {
fs_type = "f2fs"; fs_type = "f2fs";
command = kMkF2fs + " -w "s;
command += std::to_string(getpagesize());
command = kMkF2fs + " -b "s; command = kMkF2fs + " -b "s;
command += std::to_string(getpagesize()); command += std::to_string(fs_mgr_f2fs_ideal_block_size());
command += " -f -d1 -l" + android::base::Basename(kScratchMountPoint); command += " -f -d1 -l" + android::base::Basename(kScratchMountPoint);
} else if (!access(kMkExt4, X_OK) && fs_mgr_filesystem_available("ext4")) { } else if (!access(kMkExt4, X_OK) && fs_mgr_filesystem_available("ext4")) {
fs_type = "ext4"; fs_type = "ext4";

View file

@ -137,3 +137,6 @@ bool fs_mgr_mount_overlayfs_fstab_entry(const android::fs_mgr::FstabEntry& entry
// File name used to track if encryption was interrupted, leading to a known bad fs state // File name used to track if encryption was interrupted, leading to a known bad fs state
std::string fs_mgr_metadata_encryption_in_progress_file_name( std::string fs_mgr_metadata_encryption_in_progress_file_name(
const android::fs_mgr::FstabEntry& entry); const android::fs_mgr::FstabEntry& entry);
// Returns the ideal block size for make_f2fs. Returns -1 on failure.
int fs_mgr_f2fs_ideal_block_size();