]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
os/bluestore: _dump_bnode
authorSage Weil <sage@redhat.com>
Wed, 11 May 2016 20:21:48 +0000 (16:21 -0400)
committerSage Weil <sage@redhat.com>
Wed, 1 Jun 2016 15:38:46 +0000 (11:38 -0400)
Signed-off-by: Sage Weil <sage@redhat.com>
src/os/bluestore/BlueStore.cc
src/os/bluestore/BlueStore.h

index 1ece0c0445fa810c8a43d902e4b8f561a3491292..293417e7d76539c1971fa647f831361e571768da 100644 (file)
@@ -5031,7 +5031,7 @@ void BlueStore::_dump_onode(OnodeRef o, int log_level)
     pos = p.first + p.second.length;
   }
   for (auto& b : o->onode.blob_map) {
-    dout(log_level) << __func__ << "  blob " << b.first << " " << b.second
+    dout(log_level) << __func__ << "  " << b.first << ": " << b.second
                    << dendl;
   }
   pos = 0;
@@ -5046,6 +5046,20 @@ void BlueStore::_dump_onode(OnodeRef o, int log_level)
     dout(log_level) << __func__ << "  overlay_refs " << o->onode.overlay_refs
                    << dendl;
   }
+  if (o->bnode) {
+    _dump_bnode(o->bnode, log_level);
+  }
+}
+
+void BlueStore::_dump_bnode(BnodeRef b, int log_level)
+{
+  if (!g_conf->subsys.should_gather(ceph_subsys_bluestore, log_level))
+    return;
+  dout(log_level) << __func__ << " " << std::hex << b->hash << std::dec << dendl;
+  dout(log_level) << __func__ << "  " << b->ref_map << dendl;
+  for (auto &p : b->blob_map) {
+    dout(log_level) << __func__ << "  " << p.first << ": " << p.second << dendl;
+  }
 }
 
 void BlueStore::_pad_zeros(
index 24368bdfda896e652841153d3abca44e64e436b6..0d191544792a7d327cbd2b19ea86e683b5a425cc 100644 (file)
@@ -640,6 +640,7 @@ private:
   void _assign_nid(TransContext *txc, OnodeRef o);
 
   void _dump_onode(OnodeRef o, int log_level=30);
+  void _dump_bnode(BnodeRef b, int log_level=30);
 
   TransContext *_txc_create(OpSequencer *osr);
   void _txc_release(TransContext *txc, CollectionRef& c, OnodeRef& onode,