diff options
author | Zdenek Kabelac <zkabelac@redhat.com> | 2015-11-13 23:38:34 +0100 |
---|---|---|
committer | Zdenek Kabelac <zkabelac@redhat.com> | 2015-11-16 01:16:11 +0100 |
commit | 8ebf2b061174daec744f9e361fa7ca28eb19ea2e (patch) | |
tree | 07a13028e38d6b1d0bcec6c040b503ba73ed4c92 | |
parent | 0f4d96f1bd7c30e29cd9d10b555d4ce0b553f5b3 (diff) | |
download | lvm2-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.c | 13 |
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; } |