From a857aab09672097b9ba5cb6fc0ec4239ed1cce27 Mon Sep 17 00:00:00 2001 From: Prasanna Kumar Kalever Date: Thu, 13 May 2021 12:39:25 +0530 Subject: [PATCH] rbd-nbd: show per device cookie with list command [root@linux-vm1]# rbd-nbd list-mapped id pool namespace image snap device cookie 8133 rbd-pool image0 - /dev/nbd0 c704cb91-c6cf-466e-a335-0e935c0d5e47 Signed-off-by: Prasanna Kumar Kalever (cherry picked from commit efeb255d107075516c95f719f9a2ec9375d5bb2f) --- src/tools/rbd_nbd/rbd-nbd.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/tools/rbd_nbd/rbd-nbd.cc b/src/tools/rbd_nbd/rbd-nbd.cc index fa6eb9851295c..1870b67a982b1 100644 --- a/src/tools/rbd_nbd/rbd-nbd.cc +++ b/src/tools/rbd_nbd/rbd-nbd.cc @@ -808,6 +808,7 @@ public: continue; } ifs >> pid; + ifs.close(); // If the rbd-nbd is re-attached the pid may store garbage // here. We are sure this is the case when it is negative or @@ -912,6 +913,7 @@ private: c.devpath = cfg->devpath; } + c.cookie = get_cookie(cfg->devpath); *cfg = c; return 0; } @@ -1938,6 +1940,7 @@ static int do_list_mapped_devices(const std::string &format, bool pretty_format) tbl.define_column("image", TextTable::LEFT, TextTable::LEFT); tbl.define_column("snap", TextTable::LEFT, TextTable::LEFT); tbl.define_column("device", TextTable::LEFT, TextTable::LEFT); + tbl.define_column("cookie", TextTable::LEFT, TextTable::LEFT); } Config cfg; @@ -1951,6 +1954,7 @@ static int do_list_mapped_devices(const std::string &format, bool pretty_format) f->dump_string("image", cfg.imgname); f->dump_string("snap", cfg.snapname); f->dump_string("device", cfg.devpath); + f->dump_string("cookie", cfg.cookie); f->close_section(); } else { should_print = true; @@ -1958,7 +1962,7 @@ static int do_list_mapped_devices(const std::string &format, bool pretty_format) cfg.snapname = "-"; } tbl << cfg.pid << cfg.poolname << cfg.nsname << cfg.imgname - << cfg.snapname << cfg.devpath << TextTable::endrow; + << cfg.snapname << cfg.devpath << cfg.cookie << TextTable::endrow; } } -- 2.39.5