]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
blk/kernel: New perf counter to view amount of discard threads. 62481/head
authorIgor Fedotov <igor.fedotov@croit.io>
Wed, 12 Mar 2025 15:13:49 +0000 (18:13 +0300)
committerYite Gu <yitegu0@gmail.com>
Thu, 10 Apr 2025 11:56:38 +0000 (19:56 +0800)
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 66d8e57bf9ab07e2b5c2ee6863a5b0919facb9a5..0b5f44bd652003debf2956f66ccc6f54844ca0c1 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,
 };