]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
os/bluestore: implement get_devices()
authorSage Weil <sage@redhat.com>
Fri, 20 Oct 2017 22:12:30 +0000 (17:12 -0500)
committerSage Weil <sage@redhat.com>
Tue, 31 Oct 2017 17:30:44 +0000 (12:30 -0500)
Signed-off-by: Sage Weil <sage@redhat.com>
src/os/bluestore/BlueFS.cc
src/os/bluestore/BlueFS.h
src/os/bluestore/BlueStore.cc
src/os/bluestore/BlueStore.h

index 4754c2ab5ce1550e235025a8f1b172511b1c3902..8126f24f95a828764ff81a367be15d9bacb00f94 100644 (file)
@@ -459,6 +459,15 @@ void BlueFS::collect_metadata(map<string,string> *pm, unsigned skip_bdev_id)
     bdev[BDEV_WAL]->collect_metadata("bluefs_wal_", pm);
 }
 
+void BlueFS::get_devices(set<string> *ls)
+{
+  for (unsigned i = 0; i < MAX_BDEV; ++i) {
+    if (bdev[i]) {
+      bdev[i]->get_devices(ls);
+    }
+  }
+}
+
 int BlueFS::fsck()
 {
   std::lock_guard<std::mutex> l(lock);
index 7c1cfd9beec90911481299cd25c068503c6975e8..4c1f5da5b3288dc7de29ac12b2b3b733be46e4f9 100644 (file)
@@ -338,6 +338,7 @@ public:
     const vector<string>& devs);
 
   void collect_metadata(map<string,string> *pm, unsigned skip_bdev_id);
+  void get_devices(set<string> *ls);
   int fsck();
 
   uint64_t get_fs_usage();
index 717777f9088ffd81c83bff84f7b417c2ecc56df9..1abe4683b3604930ee7613e462678329e181487b 100644 (file)
@@ -6239,6 +6239,15 @@ void BlueStore::collect_metadata(map<string,string> *pm)
   }
 }
 
+int BlueStore::get_devices(set<string> *ls)
+{
+  bdev->get_devices(ls);
+  if (bluefs) {
+    bluefs->get_devices(ls);
+  }
+  return 0;
+}
+
 int BlueStore::statfs(struct store_statfs_t *buf)
 {
   buf->reset();
index 59e286d7a34e815ee145404d6d0e827f4c4f92c3..474e52ac26cffba6d1787405f7298e628bec28d9 100644 (file)
@@ -2122,6 +2122,8 @@ public:
   bool wants_journal() override { return false; };
   bool allows_journal() override { return false; };
 
+  int get_devices(set<string> *ls) override;
+
   bool is_rotational() override;
   bool is_journal_rotational() override;