diff options
author | Zdenek Kabelac <zkabelac@redhat.com> | 2016-12-17 21:54:51 +0100 |
---|---|---|
committer | Zdenek Kabelac <zkabelac@redhat.com> | 2016-12-18 19:12:12 +0100 |
commit | c71fefad8d5e1d9a075553ab69791ddbf6bcb153 (patch) | |
tree | ce954c02ea0e0d374d84b2194dd068c150661977 | |
parent | bdfc96cb089031c6d95dccb0ff66616efdb16783 (diff) | |
download | lvm2-c71fefad8d5e1d9a075553ab69791ddbf6bcb153.tar.gz |
lvs: show status for layer
When LV is external origin, show info for LV but
status for -layer. So we expose more info to a user
as otherwise active external origin is only linear
mapping of -real layer.
We do the same for i.e. old snaphost origin.
-rw-r--r-- | WHATS_NEW | 1 | ||||
-rw-r--r-- | lib/activate/activate.c | 7 |
2 files changed, 8 insertions, 0 deletions
@@ -1,5 +1,6 @@ Version 2.02.169 - ===================================== + Improve reported lvs status for active external origin volume. Fix table load for splitted RAID LV and require explicit activation. Always active splitted RAID LV exclusively locally. Do not use LV RAID status bit for segment status. diff --git a/lib/activate/activate.c b/lib/activate/activate.c index b4c8a2c5a..c554337d8 100644 --- a/lib/activate/activate.c +++ b/lib/activate/activate.c @@ -784,6 +784,13 @@ int lv_info_with_seg_status(struct cmd_context *cmd, status->info.exists = 0; /* So pool LV is not active */ } return 1; + } else if (lv_is_external_origin(lv)) { + if (!_lv_info(cmd, lv, 0, &status->info, NULL, NULL, + with_open_count, with_read_ahead)) + return_0; + + (void) _lv_info(cmd, lv, 1, NULL, lv_seg, &status->seg_status, 0, 0); + return 1; } else if (lv_is_origin(lv)) { /* Query segment status for 'layered' (-real) device most of the time, * only for merging snapshot, query its progress. |