summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Teigland <teigland@redhat.com>2020-10-15 12:53:01 -0500
committerDavid Teigland <teigland@redhat.com>2020-10-21 16:24:16 -0500
commitb3cdf0d881e63f16b8a29b26bbe3439798f44184 (patch)
tree538804a15e4dd9fb4882ffcc5392f4f4afaad21f
parent2c9bb676048fda86867df165aa297f7078dffc4b (diff)
downloadlvm2-b3cdf0d881e63f16b8a29b26bbe3439798f44184.tar.gz
lvmcache: add lvmcache_get_dev_mda
for future patch
-rw-r--r--lib/cache/lvmcache.c15
-rw-r--r--lib/cache/lvmcache.h2
2 files changed, 17 insertions, 0 deletions
diff --git a/lib/cache/lvmcache.c b/lib/cache/lvmcache.c
index ef0f4c391..4b2590c4d 100644
--- a/lib/cache/lvmcache.c
+++ b/lib/cache/lvmcache.c
@@ -271,6 +271,21 @@ void lvmcache_get_mdas(struct cmd_context *cmd,
}
}
+struct metadata_area *lvmcache_get_dev_mda(struct device *dev, int mda_num)
+{
+ struct lvmcache_info *info;
+ struct metadata_area *mda;
+
+ if (!(info = lvmcache_info_from_pvid(dev->pvid, dev, 0)))
+ return NULL;
+
+ dm_list_iterate_items(mda, &info->mdas) {
+ if (mda->mda_num == mda_num)
+ return mda;
+ }
+ return NULL;
+}
+
static void _vginfo_detach_info(struct lvmcache_info *info)
{
if (!dm_list_empty(&info->list)) {
diff --git a/lib/cache/lvmcache.h b/lib/cache/lvmcache.h
index 7a718cad8..fb4ab5562 100644
--- a/lib/cache/lvmcache.h
+++ b/lib/cache/lvmcache.h
@@ -220,4 +220,6 @@ void lvmcache_get_mdas(struct cmd_context *cmd,
const char *dev_filtered_reason(struct device *dev);
const char *devname_error_reason(const char *devname);
+struct metadata_area *lvmcache_get_dev_mda(struct device *dev, int mda_num);
+
#endif