From 74097f3294e1f86078229b38152c305ae2bba7b5 Mon Sep 17 00:00:00 2001 From: Jason Dillaman Date: Tue, 15 Mar 2016 14:36:31 -0400 Subject: [PATCH] rbd: dump mirroring primary status on info command Signed-off-by: Jason Dillaman --- src/tools/rbd/action/Info.cc | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/tools/rbd/action/Info.cc b/src/tools/rbd/action/Info.cc index 3cb60604a911d..beb7b08c792b3 100644 --- a/src/tools/rbd/action/Info.cc +++ b/src/tools/rbd/action/Info.cc @@ -71,7 +71,7 @@ static int do_show_info(const char *imgname, librbd::Image& image, uint8_t old_format; uint64_t overlap, features, flags; bool snap_protected = false; - librbd::mirror_image_t mirror_image; + librbd::mirror_image_info_t mirror_image; int r; r = image.stat(info, sizeof(info)); @@ -102,7 +102,7 @@ static int do_show_info(const char *imgname, librbd::Image& image, } if (features & RBD_FEATURE_JOURNALING) { - r = image.mirror_image_get(&mirror_image); + r = image.mirror_image_get_info(&mirror_image, sizeof(mirror_image)); if (r < 0) { return r; } @@ -189,17 +189,22 @@ static int do_show_info(const char *imgname, librbd::Image& image, if (features & RBD_FEATURE_JOURNALING) { if (f) { - f->dump_string("mirroring_state", + f->open_object_section("mirroring"); + f->dump_string("state", utils::mirror_image_state(mirror_image.state)); if (mirror_image.state != RBD_MIRROR_IMAGE_DISABLED) { - f->dump_string("mirroring_global_id", mirror_image.global_id); + f->dump_string("global_id", mirror_image.global_id); + f->dump_bool("primary", mirror_image.primary); } + f->close_section(); } else { std::cout << "\tmirroring state: " - << utils::mirror_image_state(mirror_image.state) << std::endl; + << utils::mirror_image_state(mirror_image.state) << std::endl; if (mirror_image.state != RBD_MIRROR_IMAGE_DISABLED) { std::cout << "\tmirroring global id: " << mirror_image.global_id - << std::endl; + << std::endl + << "\tmirroring primary: " + << (mirror_image.primary ? "true" : "false") <