summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZdenek Kabelac <zkabelac@redhat.com>2015-11-13 23:38:34 +0100
committerZdenek Kabelac <zkabelac@redhat.com>2015-11-16 01:16:11 +0100
commit8ebf2b061174daec744f9e361fa7ca28eb19ea2e (patch)
tree07a13028e38d6b1d0bcec6c040b503ba73ed4c92
parent0f4d96f1bd7c30e29cd9d10b555d4ce0b553f5b3 (diff)
downloadlvm2-8ebf2b061174daec744f9e361fa7ca28eb19ea2e.tar.gz
debug: lvconvert add missing display_lvname
Add missing display_lvname in _lvconvert_merge_thin_snapshot(). Also when we detect missing origin, report Internal error, which would likely be the primary fault here (and avoid dereft of NULL origin as noticed by Coverity).
-rw-r--r--tools/lvconvert.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/tools/lvconvert.c b/tools/lvconvert.c
index 335f6a441..3cfd915c8 100644
--- a/tools/lvconvert.c
+++ b/tools/lvconvert.c
@@ -2238,8 +2238,8 @@ static int _lvconvert_merge_thin_snapshot(struct cmd_context *cmd,
struct logical_volume *origin = snap_seg->origin;
if (!origin) {
- log_error("\"%s\" is not a mergeable logical volume.",
- lv->name);
+ log_error("%s is not a mergeable logical volume.",
+ display_lvname(lv));
return 0;
}
@@ -2251,9 +2251,12 @@ static int _lvconvert_merge_thin_snapshot(struct cmd_context *cmd,
}
if (lv_is_external_origin(origin)) {
- origin = origin_from_cow(lv);
- log_error("%s is read-only external origin %s.",
- display_lvname(lv), display_lvname(origin));
+ if (!(origin = origin_from_cow(lv)))
+ log_error(INTERNAL_ERROR "%s is missing origin.",
+ display_lvname(lv));
+ else
+ log_error("%s is read-only external origin %s.",
+ display_lvname(lv), display_lvname(origin));
return 0;
}