mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-21 13:34:40 +03:00
writecache: show error in lv_health_status and lv_attr
lv_attr is 'E' and lv_health_status is 'error' when dm-writecache status reports error.
This commit is contained in:
parent
240062a183
commit
ce772bfab9
@ -1412,6 +1412,9 @@ char *lv_attr_dup_with_info_and_seg_status(struct dm_pool *mem, const struct lv_
|
||||
} else if (lvdm->seg_status.type == SEG_STATUS_THIN) {
|
||||
if (lvdm->seg_status.thin->fail)
|
||||
repstr[8] = 'F';
|
||||
} else if (lvdm->seg_status.type == SEG_STATUS_WRITECACHE) {
|
||||
if (lvdm->seg_status.writecache->error)
|
||||
repstr[8] = 'E';
|
||||
} else if (lvdm->seg_status.type == SEG_STATUS_UNKNOWN)
|
||||
repstr[8] = 'X'; /* Unknown */
|
||||
|
||||
|
@ -3802,6 +3802,12 @@ static int _lvhealthstatus_disp(struct dm_report *rh, struct dm_pool *mem,
|
||||
health = "failed";
|
||||
else if (lvdm->seg_status.cache->read_only)
|
||||
health = "metadata_read_only";
|
||||
} else if (lv_is_writecache(lv) && (lvdm->seg_status.type != SEG_STATUS_NONE)) {
|
||||
if (lvdm->seg_status.type != SEG_STATUS_WRITECACHE)
|
||||
return _field_set_value(field, GET_FIRST_RESERVED_NAME(health_undef),
|
||||
GET_FIELD_RESERVED_VALUE(health_undef));
|
||||
if (lvdm->seg_status.writecache->error)
|
||||
health = "error";
|
||||
} else if (lv_is_thin_pool(lv) && (lvdm->seg_status.type != SEG_STATUS_NONE)) {
|
||||
if (lvdm->seg_status.type != SEG_STATUS_THIN_POOL)
|
||||
return _field_set_value(field, GET_FIRST_RESERVED_NAME(health_undef),
|
||||
|
@ -74,5 +74,9 @@ Related to Thin Logical Volumes: (F)ailed.
|
||||
.br
|
||||
(F)ailed is set when related thin pool enters Failed state and no further I/O
|
||||
is permitted at all.
|
||||
.IP
|
||||
Related to writecache logical volumes: (E)rror.
|
||||
.br
|
||||
(E)rror is set dm-writecache reports an error.
|
||||
.IP 10 3
|
||||
s(k)ip activation: this volume is flagged to be skipped during activation.
|
||||
|
Loading…
Reference in New Issue
Block a user