aboutsummaryrefslogtreecommitdiffstats
path: root/roots.cpp
diff options
context:
space:
mode:
authorJaegeuk Kim <jaegeuk@google.com>2018-04-02 13:37:35 -0700
committerJaegeuk Kim <jaegeuk@google.com>2018-04-04 09:14:14 -0700
commitf139bb4c56ed7b8afa4f3f0382807ba7109461ad (patch)
treeb2b48eedf273cf3a5117309456d88d6ceed600b3 /roots.cpp
parent6b6c21af2873ebd8a3e79ed1c853ca4e0ce9e88b (diff)
downloadandroid_bootable_recovery-f139bb4c56ed7b8afa4f3f0382807ba7109461ad.tar.gz
android_bootable_recovery-f139bb4c56ed7b8afa4f3f0382807ba7109461ad.tar.bz2
android_bootable_recovery-f139bb4c56ed7b8afa4f3f0382807ba7109461ad.zip
mkfs.f2fs: specify sector size for target image size
The total sectors that we want to format is used in different meanings from various users. This notifies its size based on 4096 bytes explicitly. Bug: 76407663 Change-Id: I3392646648264ad1ca78e4b87240edc9385a0cc4 Reported-by: katao@xiaomi.com Signed-off-by: Jaegeuk Kim <jaegeuk@google.com>
Diffstat (limited to 'roots.cpp')
-rw-r--r--roots.cpp25
1 files changed, 20 insertions, 5 deletions
diff --git a/roots.cpp b/roots.cpp
index 9ff5186c..8907bbd9 100644
--- a/roots.cpp
+++ b/roots.cpp
@@ -324,19 +324,34 @@ int format_volume(const char* volume, const char* directory) {
}
// Has to be f2fs because we checked earlier.
+ static constexpr int kSectorSize = 4096;
std::string cmd("/sbin/mkfs.f2fs");
- std::vector<std::string> make_f2fs_cmd = { cmd, "-d1", "-f", "-O",
- "encrypt", "-O", "quota", v->blk_device };
- if (length >= 512) {
- make_f2fs_cmd.push_back(std::to_string(length / 512));
+ // clang-format off
+ std::vector<std::string> make_f2fs_cmd = {
+ cmd,
+ "-d1",
+ "-f",
+ "-O", "encrypt",
+ "-O", "quota",
+ "-w", std::to_string(kSectorSize),
+ v->blk_device,
+ };
+ // clang-format on
+ if (length >= kSectorSize) {
+ make_f2fs_cmd.push_back(std::to_string(length / kSectorSize));
}
int result = exec_cmd(make_f2fs_cmd);
if (result == 0 && directory != nullptr) {
cmd = "/sbin/sload.f2fs";
+ // clang-format off
std::vector<std::string> sload_f2fs_cmd = {
- cmd, "-f", directory, "-t", volume, v->blk_device,
+ cmd,
+ "-f", directory,
+ "-t", volume,
+ v->blk_device,
};
+ // clang-format on
result = exec_cmd(sload_f2fs_cmd);
}
if (result != 0) {