summaryrefslogtreecommitdiff
path: root/lib/mirror
diff options
context:
space:
mode:
authorZdenek Kabelac <zkabelac@redhat.com>2021-03-11 20:38:51 +0100
committerZdenek Kabelac <zkabelac@redhat.com>2021-03-14 16:34:38 +0100
commit5141a510bdfbf1ac8a64cc7ffd8c292c0c4b7a60 (patch)
treea28f39492554d8ec4886bbd71305eb1f128214e9 /lib/mirror
parent3608e8aee74a5c771b96d768e6c32edc728dbca0 (diff)
downloadlvm2-5141a510bdfbf1ac8a64cc7ffd8c292c0c4b7a60.tar.gz
lv_info: missing check for info.exists
When &info is passed in, user needs to check for exists. When there is NULL, return value includes check for exists.
Diffstat (limited to 'lib/mirror')
-rw-r--r--lib/mirror/mirrored.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/mirror/mirrored.c b/lib/mirror/mirrored.c
index 64b470a98..83f1bffcb 100644
--- a/lib/mirror/mirrored.c
+++ b/lib/mirror/mirrored.c
@@ -212,7 +212,7 @@ static int _mirrored_transient_status(struct dm_pool *mem, struct lv_segment *se
if (!strcmp(sm->log_type, "disk")) {
log = first_seg(lv)->log_lv;
- if (!lv_info(lv->vg->cmd, log, 0, &info, 0, 0)) {
+ if (!lv_info(lv->vg->cmd, log, 0, &info, 0, 0) || !info.exists) {
log_error("Check for existence of mirror log %s failed.",
display_lvname(log));
goto out;
@@ -235,7 +235,7 @@ static int _mirrored_transient_status(struct dm_pool *mem, struct lv_segment *se
}
for (i = 0; i < seg->area_count; ++i) {
- if (!lv_info(lv->vg->cmd, seg_lv(seg, i), 0, &info, 0, 0)) {
+ if (!lv_info(lv->vg->cmd, seg_lv(seg, i), 0, &info, 0, 0) || !info.exists) {
log_error("Check for existence of mirror image %s failed.",
seg_lv(seg, i)->name);
goto out;