diff options
author | alk3pInjection <webmaster@raspii.tech> | 2023-04-20 00:08:54 +0800 |
---|---|---|
committer | alk3pInjection <webmaster@raspii.tech> | 2023-04-20 00:08:54 +0800 |
commit | a7dd355e8fe8ad0c579a4f0acd06b2e3b52dfc3a (patch) | |
tree | 2b552b59793a33466247fc6fb8cf89ecbfdc4a05 /fs_mgr/fs_mgr_overlayfs.cpp | |
parent | f0103ea35d56ccebbae16a43cac19ac38b11a9a2 (diff) | |
parent | 43816573a268998f892081eebf3ffe91d65b7e18 (diff) |
Merge tag 'LA.QSSI.13.0.r1-09800-qssi.0' into tachibanatachibana
"LA.QSSI.13.0.r1-09800-qssi.0"
Change-Id: I06ecf682f4d5595bce3383b6031506cc56bc0db2
Diffstat (limited to 'fs_mgr/fs_mgr_overlayfs.cpp')
-rw-r--r-- | fs_mgr/fs_mgr_overlayfs.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/fs_mgr/fs_mgr_overlayfs.cpp b/fs_mgr/fs_mgr_overlayfs.cpp index 82b5275a3..6942d0ccd 100644 --- a/fs_mgr/fs_mgr_overlayfs.cpp +++ b/fs_mgr/fs_mgr_overlayfs.cpp @@ -1140,7 +1140,13 @@ static inline uint64_t GetIdealDataScratchSize() { return 0; } - return std::min(super_info.size, (uint64_t(s.f_frsize) * s.f_bfree) / 2); + auto ideal_size = std::min(super_info.size, (uint64_t(s.f_frsize) * s.f_bfree) / 2); + + // Align up to the filesystem block size. + if (auto remainder = ideal_size % s.f_bsize; remainder > 0) { + ideal_size += s.f_bsize - remainder; + } + return ideal_size; } static bool CreateScratchOnData(std::string* scratch_device, bool* partition_exists, bool* change) { |