]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
librbd: send FLUSH_SOURCE_INTERNAL when do copy/deep_copy.
authorJianpeng Ma <jianpeng.ma@intel.com>
Mon, 1 Nov 2021 00:33:23 +0000 (08:33 +0800)
committerDeepika Upadhyay <dupadhya@redhat.com>
Fri, 10 Dec 2021 07:18:54 +0000 (12:48 +0530)
commit4d8c6cf2c268505dd654e26ed264a22e733f46b9
tree8362169666cb8cd3463bc74c2f4fbea702ba5874
parentd86f36d0c2be203af9129f8667eb9386b5bfe47d
librbd: send FLUSH_SOURCE_INTERNAL when do copy/deep_copy.

copy/deep_copy use object_map to judge whether object exist.
If w/ librbdo pwl cache, flush can't flush data to osd which
change objectmap state. So we should send flush w/ FLUSH_SOURCE_INTERNAL
to make data flush to osd.

Fixes:https://tracker.ceph.com/issues/53057
Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
(cherry picked from commit a2ae83f8aab18933eae77cf3034b740082a39e4f)
src/librbd/api/Image.cc
src/librbd/internal.cc