From: Mykola Golub Date: Wed, 2 Dec 2020 13:02:30 +0000 (+0000) Subject: librbd: skip fast-diff optimization when deep copying with flatten X-Git-Tag: v16.1.0~363^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F38389%2Fhead;p=ceph.git librbd: skip fast-diff optimization when deep copying with flatten Even if a source object does not exist we still may need to copy from the source parent. Signed-off-by: Mykola Golub --- diff --git a/src/librbd/deep_copy/ImageCopyRequest.cc b/src/librbd/deep_copy/ImageCopyRequest.cc index 716341891c5..37b3e0fbd4e 100644 --- a/src/librbd/deep_copy/ImageCopyRequest.cc +++ b/src/librbd/deep_copy/ImageCopyRequest.cc @@ -90,6 +90,11 @@ void ImageCopyRequest::map_src_objects(uint64_t dst_object, template void ImageCopyRequest::compute_diff() { + if (m_flatten) { + send_object_copies(); + return; + } + ldout(m_cct, 10) << dendl; auto ctx = create_context_callback<