Merge "Move Sync to base class" into main am: 2d5ec079be am: 8a41f54079 am: 6dc934c695 am: 1155016e7d

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

Change-Id: I5e3b483a0054bcfa900a7d921596e2d8638f8c1c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Daniel Zheng 2023-10-10 05:23:09 +00:00 committed by Automerger Merge Worker
commit 31f8a58f88
4 changed files with 12 additions and 12 deletions

View file

@ -191,5 +191,16 @@ std::unique_ptr<chromeos_update_engine::FileDescriptor> CowWriterBase::OpenFileD
block_dev_size);
}
bool CowWriterBase::Sync() {
if (is_dev_null_) {
return true;
}
if (fsync(fd_.get()) < 0) {
PLOG(ERROR) << "fsync failed";
return false;
}
return true;
}
} // namespace snapshot
} // namespace android

View file

@ -34,6 +34,7 @@ class CowWriterBase : public ICowWriter {
// If the given label is not found, Initialize will fail.
virtual bool Initialize(std::optional<uint64_t> label = {}) = 0;
bool Sync();
bool AddCopy(uint64_t new_block, uint64_t old_block, uint64_t num_blocks = 1) override;
bool AddRawBlocks(uint64_t new_block_start, const void* data, size_t size) override;
bool AddXorBlocks(uint32_t new_block_start, const void* data, size_t size, uint32_t old_block,

View file

@ -704,17 +704,6 @@ bool CowWriterV2::WriteRawData(const void* data, const size_t size) {
return true;
}
bool CowWriterV2::Sync() {
if (is_dev_null_) {
return true;
}
if (fsync(fd_.get()) < 0) {
PLOG(ERROR) << "fsync failed";
return false;
}
return true;
}
bool CowWriterV2::Truncate(off_t length) {
if (is_dev_null_ || is_block_device_) {
return true;

View file

@ -58,7 +58,6 @@ class CowWriterV2 : public CowWriterBase {
bool FlushCluster();
bool CompressBlocks(size_t num_blocks, const void* data);
bool Sync();
bool Truncate(off_t length);
bool EnsureSpaceAvailable(const uint64_t bytes_needed) const;