Actions
Tasks #70193
closedTasks #63293: Implement fscrypt in libcephfs and cephfs-fuse
Tasks #69975: Sepia Lab Test Runs
Tasks #70192: choffman-2025-02-25_14:26:50-fs:fscrypt-wip-choffman-fscrypt-distro-default-smithi
dbench fails
% Done:
0%
Reviewed:
Affected Versions:
Component(FS):
Labels (FS):
Pull request ID:
Tags (freeform):
Merge Commit:
Fixed In:
Released In:
Upkeep Timestamp:
Updated by Christopher Hoffman 12 months ago
- Status changed from New to In Progress
Updated by Christopher Hoffman 12 months ago
- Status changed from In Progress to Resolved
Issue resolved and reran here:
https://pulpito.ceph.com/choffman-2025-02-28_20:17:24-fs-wip-choffman-fscrypt-distro-default-smithi/8161144/
Author: Christopher Hoffman <[email protected]> Date: Thu Feb 27 19:11:40 2025 +0000 client: Use correct sizes in write_success Write success had some incorrect usage of sizes. request_[size|offset] refers to logical size toalwritten + offset refers to written to osd size Fixes: https://tracker.ceph.com/issues/70193 Signed-off-by: Christopher Hoffman <[email protected]> diff --git a/src/client/Client.cc b/src/client/Client.cc index 32799533039..0dd5eedc226 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -11834,14 +11834,12 @@ int64_t Client::_write_success(Fh *f, utime_t start, uint64_t fpos, // extend file? if (request_size + request_offset > in->effective_size()) { - size = request_size + request_offset; if (encrypted) { - in->set_effective_size(size); + in->set_effective_size(request_size + request_offset); in->mark_caps_dirty(CEPH_CAP_FILE_EXCL); - size = fscrypt_next_block_start(offset + size); } ldout(cct, 7) << "in->effective_size()=" << in->effective_size() << dendl; - in->size = size; + in->size = totalwritten + offset; in->mark_caps_dirty(CEPH_CAP_FILE_WR); if (is_quota_bytes_approaching(in, f->actor_perms)) {
Actions