]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
librbd: increased logging for asio::ContextWQ
authorJason Dillaman <dillaman@redhat.com>
Fri, 10 Jul 2020 14:00:46 +0000 (10:00 -0400)
committerJason Dillaman <dillaman@redhat.com>
Thu, 16 Jul 2020 20:01:28 +0000 (16:01 -0400)
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
src/librbd/AsioEngine.cc
src/librbd/asio/ContextWQ.cc
src/librbd/asio/ContextWQ.h

index 535ad57b5ac0f8c2258c5fe7e160c5414563cd88..d8cf48d3969085b9b19c2d05fdb5f4ef23e9f00f 100644 (file)
@@ -22,7 +22,7 @@ AsioEngine::AsioEngine(std::shared_ptr<librados::Rados> rados)
     m_cct(m_rados_api->cct()),
     m_io_context(m_rados_api->get_io_context()),
     m_api_strand(m_io_context),
-    m_context_wq(std::make_unique<asio::ContextWQ>(m_io_context)) {
+    m_context_wq(std::make_unique<asio::ContextWQ>(m_cct, m_io_context)) {
   ldout(m_cct, 20) << dendl;
 
   auto rados_threads = m_cct->_conf.get_val<uint64_t>("librados_thread_count");
index 7d18f6f3d3651bcf4c49fd0303b7a4faa8b513d1..db4fadec69f6fb8b569b9a02d3156e086ce82367 100644 (file)
@@ -4,16 +4,28 @@
 #include "librbd/asio/ContextWQ.h"
 #include "include/Context.h"
 #include "common/Cond.h"
+#include "common/dout.h"
+
+#define dout_subsys ceph_subsys_rbd
+#undef dout_prefix
+#define dout_prefix *_dout << "librbd::asio::ContextWQ: " \
+                           << this << " " << __func__ << ": "
 
 namespace librbd {
 namespace asio {
 
-ContextWQ::ContextWQ(boost::asio::io_context& io_context)
-  : m_io_context(io_context), m_strand(io_context),
+ContextWQ::ContextWQ(CephContext* cct, boost::asio::io_context& io_context)
+  : m_cct(cct), m_io_context(io_context), m_strand(io_context),
     m_queued_ops(0) {
+  ldout(m_cct, 20) << dendl;
+}
+
+ContextWQ::~ContextWQ() {
+  ldout(m_cct, 20) << dendl;
 }
 
 void ContextWQ::drain() {
+  ldout(m_cct, 20) << dendl;
   C_SaferCond ctx;
   drain_handler(&ctx);
   ctx.wait();
index 2fff5b52cd416783fc5bdffd7ea619eabbe5f908..3197756205d338b2b34d65a6fb78204b27e0151d 100644 (file)
@@ -4,6 +4,7 @@
 #ifndef CEPH_LIBRBD_ASIO_CONTEXT_WQ_H
 #define CEPH_LIBRBD_ASIO_CONTEXT_WQ_H
 
+#include "include/common_fwd.h"
 #include "include/Context.h"
 #include <atomic>
 #include <boost/asio/io_context.hpp>
@@ -15,7 +16,8 @@ namespace asio {
 
 class ContextWQ {
 public:
-  explicit ContextWQ(boost::asio::io_context& io_context);
+  explicit ContextWQ(CephContext* cct, boost::asio::io_context& io_context);
+  ~ContextWQ();
 
   void drain();
 
@@ -33,6 +35,7 @@ public:
   }
 
 private:
+  CephContext* m_cct;
   boost::asio::io_context& m_io_context;
   boost::asio::io_context::strand m_strand;