]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
blk/kernel: New perf counter to view amount of discard threads.
authorIgor Fedotov <igor.fedotov@croit.io>
Wed, 12 Mar 2025 15:13:49 +0000 (18:13 +0300)
committerIgor Fedotov <igor.fedotov@croit.io>
Tue, 15 Apr 2025 08:51:50 +0000 (11:51 +0300)
Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
(cherry picked from commit 5aba1c9c3abd91bc85c3e01215b6b4ffe6a8d7d1)

src/blk/kernel/KernelDevice.cc
src/blk/kernel/KernelDevice.h

index df4f37a5a540a03531a24d9e4be7687b81b19d77..283f94c7542e4ed73d678a6d7f1254558164491d 100644 (file)
@@ -96,6 +96,8 @@ KernelDevice::KernelDevice(CephContext* cct, aio_callback_t cb, void *cbpriv, ai
   b.set_prio_default(PerfCountersBuilder::PRIO_USEFUL);
   b.add_u64_counter(l_blk_kernel_device_discard_op, "discard_op",
             "Number of discard ops issued to kernel device");
+  b.add_u64_counter(l_blk_kernel_discard_threads, "discard_threads",
+            "Number of discard threads running");
 
   logger.reset(b.create_perf_counters());
   cct->get_perfcounters_collection()->add(logger.get());
@@ -589,6 +591,7 @@ void KernelDevice::_discard_update_threads(bool discard_stop)
       t->join();
     }
   }
+  logger->set(l_blk_kernel_discard_threads, discard_threads.size());
 }
 
 void KernelDevice::_discard_stop()
index 1444bfa54bbd72be9362b4304fbe6dac3bae8cdb..29e91ab5f6dc8999257ec0081c2440076c99ec64 100644 (file)
@@ -32,6 +32,7 @@
 enum {
   l_blk_kernel_device_first = 1000,
   l_blk_kernel_device_discard_op,
+  l_blk_kernel_discard_threads,
   l_blk_kernel_device_last,
 };