aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Zheng <zhengdaniel@google.com>2024-01-04 21:23:37 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2024-01-04 21:23:37 +0000
commit60abcaca11b41d18d20cd77590626e88e3306cf2 (patch)
treeb29d56e38605b739647f1bfc9114c4b2325ce902
parenta4c9284d610a6021e4073e0fbb918835d2363dd3 (diff)
parent51983150f3092d134c7f1136bb05f4c8156db03b (diff)
downloadupdate_engine-60abcaca11b41d18d20cd77590626e88e3306cf2.tar.gz
update_engine: cow estimator to use cow version am: 51983150f3
Original change: https://android-review.googlesource.com/c/platform/system/update_engine/+/2887466 Change-Id: I9433029e85a2031c2af432a44572e92e97fc6888 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--payload_generator/cow_size_estimator.cc6
-rw-r--r--payload_generator/cow_size_estimator.h3
-rw-r--r--payload_generator/delta_diff_generator.cc5
3 files changed, 8 insertions, 6 deletions
diff --git a/payload_generator/cow_size_estimator.cc b/payload_generator/cow_size_estimator.cc
index 22ef6096..9ab2b878 100644
--- a/payload_generator/cow_size_estimator.cc
+++ b/payload_generator/cow_size_estimator.cc
@@ -145,13 +145,13 @@ android::snapshot::CowSizeInfo EstimateCowSizeInfo(
const size_t block_size,
std::string compression,
const size_t partition_size,
- const bool xor_enabled) {
+ const bool xor_enabled,
+ uint32_t cow_version) {
android::snapshot::CowOptions options{
.block_size = static_cast<uint32_t>(block_size),
.compression = std::move(compression),
.max_blocks = (partition_size / block_size)};
- auto cow_writer =
- CreateCowEstimator(android::snapshot::kCowVersionManifest, options);
+ auto cow_writer = CreateCowEstimator(cow_version, options);
CHECK_NE(cow_writer, nullptr) << "Could not create cow estimator";
CHECK(CowDryRun(source_fd,
target_fd,
diff --git a/payload_generator/cow_size_estimator.h b/payload_generator/cow_size_estimator.h
index c9fab09b..7cb3485f 100644
--- a/payload_generator/cow_size_estimator.h
+++ b/payload_generator/cow_size_estimator.h
@@ -37,7 +37,8 @@ android::snapshot::CowSizeInfo EstimateCowSizeInfo(
const size_t block_size,
std::string compression,
const size_t partition_size,
- bool xor_enabled);
+ bool xor_enabled,
+ uint32_t cow_version);
// Convert InstallOps to CowOps and apply the converted cow op to |cow_writer|
bool CowDryRun(
diff --git a/payload_generator/delta_diff_generator.cc b/payload_generator/delta_diff_generator.cc
index b1dc6931..0da929eb 100644
--- a/payload_generator/delta_diff_generator.cc
+++ b/payload_generator/delta_diff_generator.cc
@@ -142,9 +142,10 @@ class PartitionProcessor : public base::DelegateSimpleThread::Delegate {
config_.block_size,
config_.target.dynamic_partition_metadata->vabc_compression_param(),
new_part_.size,
- config_.enable_vabc_xor);
+ config_.enable_vabc_xor,
+ config_.target.dynamic_partition_metadata->cow_version());
- // ops buffer size == 0 for v2 of cow format
+ // ops buffer size == 0 for v2 version of cow format
LOG(INFO) << "Estimated COW size for partition: " << new_part_.name << " "
<< cow_info_->cow_size
<< " ops buffer size: " << cow_info_->op_count_max;