From ca28f2dc565a513a7d3786fe99eef430d6ae4dc7 Mon Sep 17 00:00:00 2001 From: Samuel Just Date: Mon, 17 Aug 2020 20:10:21 -0700 Subject: [PATCH] crimson/os/seastore: improve misc debugging Signed-off-by: Samuel Just --- src/crimson/os/seastore/cache.cc | 5 +++++ src/crimson/os/seastore/transaction_manager.cc | 8 +++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/crimson/os/seastore/cache.cc b/src/crimson/os/seastore/cache.cc index 25d20be3fab..920f30cc226 100644 --- a/src/crimson/os/seastore/cache.cc +++ b/src/crimson/os/seastore/cache.cc @@ -33,6 +33,7 @@ Cache::retire_extent_ret Cache::retire_extent_if_cached( Transaction &t, paddr_t addr) { if (auto ext = t.write_set.find_offset(addr); ext != t.write_set.end()) { + logger().debug("{}: found {} in t.write_set", __func__, addr); t.add_to_retired_set(CachedExtentRef(&*ext)); return retire_extent_ertr::now(); } else if (auto iter = extents.find_offset(addr); @@ -165,6 +166,10 @@ std::optional Cache::try_construct_record(Transaction &t) } if (t.root) { + logger().debug( + "{}: writing out root delta for {}", + __func__, + *t.root); record.deltas.push_back( delta_info_t{ extent_types_t::ROOT, diff --git a/src/crimson/os/seastore/transaction_manager.cc b/src/crimson/os/seastore/transaction_manager.cc index 82a4d3de327..8b035768106 100644 --- a/src/crimson/os/seastore/transaction_manager.cc +++ b/src/crimson/os/seastore/transaction_manager.cc @@ -120,6 +120,9 @@ TransactionManager::ref_ret TransactionManager::dec_ref( return lba_manager.decref_extent(t, ref->get_laddr() ).safe_then([this, &t, ref](auto ret) { if (ret.refcount == 0) { + logger().debug( + "TransactionManager::dec_ref: extent {} refcount 0", + *ref); cache.retire_extent(t, ref); } return ret.refcount; @@ -131,8 +134,11 @@ TransactionManager::ref_ret TransactionManager::dec_ref( laddr_t offset) { return lba_manager.decref_extent(t, offset - ).safe_then([this, &t](auto result) -> ref_ret { + ).safe_then([this, offset, &t](auto result) -> ref_ret { if (result.refcount == 0) { + logger().debug( + "TransactionManager::dec_ref: offset {} refcount 0", + offset); return cache.retire_extent_if_cached(t, result.addr).safe_then([] { return ref_ret( ref_ertr::ready_future_marker{}, -- 2.39.5