summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Rajnoha <prajnoha@redhat.com>2015-08-17 14:09:10 +0200
committerPeter Rajnoha <prajnoha@redhat.com>2016-02-19 14:40:23 +0100
commit5e1be9408610b6dd341e27d8ef34c9f8be4d8151 (patch)
tree3f3e7c7aeab320475b4badf8d640a263acdaca62
parentf9c25371d909386b8663e6b60ca34d766f48e171 (diff)
downloadlvm2-5e1be9408610b6dd341e27d8ef34c9f8be4d8151.tar.gz
report: display (f)ormer state in lv_attr field
The 'former' state is displayed as 5th bit ("state") in the lv_attr field and denoted by new 'f' character.
-rw-r--r--lib/metadata/lv.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/metadata/lv.c b/lib/metadata/lv.c
index 8d69d5958..1c9688ad6 100644
--- a/lib/metadata/lv.c
+++ b/lib/metadata/lv.c
@@ -1040,7 +1040,7 @@ char *lv_attr_dup_with_info_and_seg_status(struct dm_pool *mem, const struct lv_
}
/* Blank if this is a "free space" LV. */
- if (!*lv->name)
+ if (!*lv->name && !lv_is_former(lv))
goto out;
if (lv_is_pvmove(lv))
@@ -1104,7 +1104,10 @@ char *lv_attr_dup_with_info_and_seg_status(struct dm_pool *mem, const struct lv_
repstr[3] = (lv->status & FIXED_MINOR) ? 'm' : '-';
- if (!activation() || !lvdm->info_ok) {
+ if (lv_is_former(lv)) {
+ repstr[4] = 'f';
+ repstr[5] = '-';
+ } else if (!activation() || !lvdm->info_ok) {
repstr[4] = 'X'; /* Unknown */
repstr[5] = 'X'; /* Unknown */
} else if (lvdm->info.exists) {