]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
do_reclaim_space logging
authorSamuel Just <sjust@redhat.com>
Fri, 6 Feb 2026 01:29:00 +0000 (01:29 +0000)
committerSamuel Just <sjust@redhat.com>
Mon, 16 Feb 2026 23:40:56 +0000 (15:40 -0800)
src/crimson/os/seastore/async_cleaner.cc

index c52bcb75659c937608f369956ee76286e5361000..04ee8d394189d2d4dc55acbec140da00c0657c7f 100644 (file)
@@ -1157,6 +1157,7 @@ SegmentCleaner::do_reclaim_space(
     std::size_t &reclaimed,
     std::size_t &runs)
 {
+  LOG_PREFIX(SegmentCleaner::do_reclaim_space);
   auto& shard_stats = extent_callback->get_shard_stats();
   if (is_cold) {
     ++(shard_stats.cleaner_cold_num);
@@ -1174,7 +1175,7 @@ SegmentCleaner::do_reclaim_space(
   //   tree doesn't match the extent's paddr
   // 3. the extent is physical and doesn't exist in the
   //   lba tree, backref tree or backref cache;
-  return repeat_eagain([this, &backref_extents, &shard_stats,
+  return repeat_eagain([this, FNAME, &backref_extents, &shard_stats,
                         &pin_list, &reclaimed, &runs] {
     reclaimed = 0;
     runs++;
@@ -1190,11 +1191,11 @@ SegmentCleaner::do_reclaim_space(
       src,
       "clean_reclaim_space",
       CACHE_HINT_NOCACHE,
-      [this, &backref_extents, &pin_list, &reclaimed](auto &t)
+      [this, FNAME, &backref_extents, &pin_list, &reclaimed](auto &t)
     {
       return seastar::do_with(
         std::vector<CachedExtentRef>(backref_extents),
-        [this, &t, &reclaimed, &pin_list](auto &extents)
+        [this, FNAME, &t, &reclaimed, &pin_list](auto &extents)
       {
         LOG_PREFIX(SegmentCleaner::do_reclaim_space);
         // calculate live extents
@@ -1212,7 +1213,12 @@ SegmentCleaner::do_reclaim_space(
         for (auto &cached_backref : cached_backref_entries) {
           if (cached_backref.laddr == L_ADDR_NULL) {
             auto it = backref_entries.find(cached_backref.paddr);
-            assert(it->len == cached_backref.len);
+            if (it->len != cached_backref.len) {
+              ERRORT(
+                "found backref mismatch {}, {}",
+                t, *it, cached_backref);
+              assert(it->len == cached_backref.len);
+            }
             backref_entries.erase(it);
           } else {
             backref_entries.emplace(cached_backref);