From: Sage Weil Date: Thu, 1 Nov 2018 09:52:13 +0000 (-0500) Subject: os/filestore: include journal in get_devices result X-Git-Tag: v14.1.0~873^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=ea68ca5fe1ed5297d8148f1e9b0e5617dac64f63;p=ceph.git os/filestore: include journal in get_devices result Signed-off-by: Sage Weil --- diff --git a/src/os/filestore/FileJournal.cc b/src/os/filestore/FileJournal.cc index 910dc372813..c0f5113761a 100644 --- a/src/os/filestore/FileJournal.cc +++ b/src/os/filestore/FileJournal.cc @@ -2185,3 +2185,16 @@ off64_t FileJournal::get_journal_size_estimate() dout(20) << __func__ << " journal size=" << size << dendl; return size; } + +void FileJournal::get_devices(set *ls) +{ + char dev_node[PATH_MAX]; + BlkDev blkdev(fd); + if (int rc = blkdev.wholedisk(dev_node, PATH_MAX); rc) { + return rc; + } + ls->insert(dev_node); + if (strncmp(dev_node, "dm-", 3) == 0) { + get_dm_parents(dev_node, ls); + } +} diff --git a/src/os/filestore/FileJournal.h b/src/os/filestore/FileJournal.h index 443aaee4101..52376d18f39 100644 --- a/src/os/filestore/FileJournal.h +++ b/src/os/filestore/FileJournal.h @@ -463,6 +463,8 @@ private: void flush() override; + void get_devices(set *ls) override; + void reserve_throttle_and_backoff(uint64_t count) override; bool is_writeable() override { diff --git a/src/os/filestore/FileStore.cc b/src/os/filestore/FileStore.cc index d1cf1a5aceb..3d39d1b0ca2 100644 --- a/src/os/filestore/FileStore.cc +++ b/src/os/filestore/FileStore.cc @@ -722,6 +722,9 @@ int FileStore::get_devices(set *ls) if (strncmp(dev_node, "dm-", 3) == 0) { get_dm_parents(dev_node, ls); } + if (journal) { + journal->get_devices(ls); + } return 0; } diff --git a/src/os/filestore/Journal.h b/src/os/filestore/Journal.h index 9c1206cd257..17744308494 100644 --- a/src/os/filestore/Journal.h +++ b/src/os/filestore/Journal.h @@ -52,6 +52,8 @@ public: virtual void flush() = 0; + virtual void get_devices(set *ls) {} + /** * reserve_throttle_and_backoff *