diff options
-rw-r--r-- | lib/metadata/mirror.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/metadata/mirror.c b/lib/metadata/mirror.c index a4f906b7..21857fd2 100644 --- a/lib/metadata/mirror.c +++ b/lib/metadata/mirror.c @@ -114,13 +114,17 @@ uint32_t lv_mirror_count(const struct logical_volume *lv) return 1; seg = first_seg(lv); + + if (lv->status & PVMOVE) + return seg->area_count; + mirrors = 0; for (s = 0; s < seg->area_count; s++) { if (seg_type(seg, s) != AREA_LV) continue; if (is_temporary_mirror_layer(seg_lv(seg, s))) - mirrors += lv_mirror_count(seg_lv(seg, s)) - 1; + mirrors += lv_mirror_count(seg_lv(seg, s)); else mirrors++; } |