]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
os/bluestore: Enable selection of old/new ExtentMap::dup
authorAdam Kupczyk <akupczyk@ibm.com>
Fri, 31 Mar 2023 09:41:45 +0000 (09:41 +0000)
committerAdam Kupczyk <akupczyk@ibm.com>
Thu, 6 Jul 2023 15:28:50 +0000 (15:28 +0000)
Modify _do_clone_range to select variant of ExtentMap::dup depending on elastic_shared_blob.

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
src/os/bluestore/BlueStore.cc

index 4ad4f0374f191545f0ada401e93786c6f5300ba9..d8f94c1f206c199e275e7547f6f2566c9fced2f8 100644 (file)
@@ -17890,7 +17890,11 @@ int BlueStore::_do_clone_range(
   _dump_onode<30>(cct, *oldo);
   _dump_onode<30>(cct, *newo);
 
-  oldo->extent_map.dup(this, txc, c, oldo, newo, srcoff, length, dstoff);
+  if (elastic_shared_blobs) {
+    oldo->extent_map.dup_esb(this, txc, c, oldo, newo, srcoff, length, dstoff);
+  } else {
+    oldo->extent_map.dup(this, txc, c, oldo, newo, srcoff, length, dstoff);
+  }
 
 #ifdef HAVE_LIBZBD
   if (bdev->is_smr()) {