]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/os/seastore/lba_manager: clean up LBAManager::decref_extent()
authorXuehan Xu <xuxuehan@qianxin.com>
Wed, 8 May 2024 03:14:33 +0000 (11:14 +0800)
committerXuehan Xu <xuxuehan@qianxin.com>
Fri, 17 May 2024 02:41:22 +0000 (10:41 +0800)
interface

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
src/crimson/os/seastore/lba_manager.h
src/crimson/os/seastore/lba_manager/btree/btree_lba_manager.h
src/crimson/os/seastore/transaction_manager.cc
src/crimson/os/seastore/transaction_manager.h
src/test/crimson/seastore/test_btree_lba_manager.cc

index 7467a36f99cbf1961fbb46f8aa5e1c74de7769b0..8ff9406f814bb11fd0aa3016a02c0b4401241c6b 100644 (file)
@@ -124,8 +124,7 @@ public:
    */
   virtual ref_ret decref_extent(
     Transaction &t,
-    laddr_t addr,
-    bool cascade_remove) = 0;
+    laddr_t addr) = 0;
 
   /**
    * Increments ref count on extent
index 54d28195000a11aac729c0e83c2ba7c140ed2299..70e63118812722d14ea6fb142b43892937b21681 100644 (file)
@@ -334,9 +334,8 @@ public:
 
   ref_ret decref_extent(
     Transaction &t,
-    laddr_t addr,
-    bool cascade_remove) final {
-    return update_refcount(t, addr, -1, cascade_remove
+    laddr_t addr) final {
+    return update_refcount(t, addr, -1, true
     ).si_then([](auto res) {
       return std::move(res.ref_update_res);
     });
index 654ddc7c6d2ed61ecd2822746fd5dc110b1636bf..8a187c395e749b69617b338f168d39f96b59f193 100644 (file)
@@ -216,7 +216,7 @@ TransactionManager::ref_ret TransactionManager::remove(
 {
   LOG_PREFIX(TransactionManager::remove);
   TRACET("{}", t, *ref);
-  return lba_manager->decref_extent(t, ref->get_laddr(), true
+  return lba_manager->decref_extent(t, ref->get_laddr()
   ).si_then([this, FNAME, &t, ref](auto result) {
     DEBUGT("extent refcount is decremented to {} -- {}",
            t, result.refcount, *ref);
@@ -229,12 +229,11 @@ TransactionManager::ref_ret TransactionManager::remove(
 
 TransactionManager::ref_ret TransactionManager::_dec_ref(
   Transaction &t,
-  laddr_t offset,
-  bool cascade_remove)
+  laddr_t offset)
 {
   LOG_PREFIX(TransactionManager::_dec_ref);
   TRACET("{}", t, offset);
-  return lba_manager->decref_extent(t, offset, cascade_remove
+  return lba_manager->decref_extent(t, offset
   ).si_then([this, FNAME, offset, &t](auto result) -> ref_ret {
     DEBUGT("extent refcount is decremented to {} -- {}~{}, {}",
            t, result.refcount, offset, result.length, result.addr);
index 9de52456793234e3a78593b161368a12b3429988..a6ee603866b81487b6e410bd73456b72a507577d 100644 (file)
@@ -283,7 +283,7 @@ public:
   ref_ret remove(
     Transaction &t,
     laddr_t offset) {
-    return _dec_ref(t, offset, true);
+    return _dec_ref(t, offset);
   }
 
   /// remove refcount for list of offset
@@ -803,8 +803,7 @@ private:
   /// Remove refcount for offset
   ref_ret _dec_ref(
     Transaction &t,
-    laddr_t offset,
-    bool cascade_remove);
+    laddr_t offset);
 
   using update_lba_mappings_ret = LBAManager::update_mappings_ret;
   update_lba_mappings_ret update_lba_mappings(
index 8cdadd097a3c552cf4a33abd3fa163f263cbf5f8..fb0dc4ab39f24ec7d0c0e4229b7158230dd01b29 100644 (file)
@@ -563,8 +563,7 @@ struct btree_lba_manager_test : btree_test_base {
       [=, this](auto &t) {
        return lba_manager->decref_extent(
          t,
-         target->first,
-         true
+         target->first
        ).si_then([this, &t, target](auto result) {
          EXPECT_EQ(result.refcount, target->second.refcount);
          if (result.refcount == 0) {