summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZdenek Kabelac <zkabelac@redhat.com>2019-04-03 13:02:50 +0200
committerZdenek Kabelac <zkabelac@redhat.com>2019-04-03 13:28:54 +0200
commitfcec6691f074f1123b9c04c3130f84e35d195b01 (patch)
tree44f4e065c19d9c026f7250ef052f6e51d7196050
parente27d0271557d4b93e87a70854b3c7f1cc6008155 (diff)
downloadlvm2-fcec6691f074f1123b9c04c3130f84e35d195b01.tar.gz
thin: fix maintenance of _pmspare
When metadata grows lvm2 may need to extend also _pmspare volume.
-rw-r--r--WHATS_NEW1
-rw-r--r--lib/metadata/lv_manip.c4
2 files changed, 5 insertions, 0 deletions
diff --git a/WHATS_NEW b/WHATS_NEW
index 00c96b5a6..81c3d7111 100644
--- a/WHATS_NEW
+++ b/WHATS_NEW
@@ -1,5 +1,6 @@
Version 2.03.02 -
===================================
+ Fix missing growth of _pmsmare volume when extending _tmeta volume.
Automatically grow thin metadata, when thin data gets too big.
Add synchronization with udev before removing cached devices.
Add support for caching VDO LVs and VDOPOOL LVs.
diff --git a/lib/metadata/lv_manip.c b/lib/metadata/lv_manip.c
index a13ba31ac..76d18b0d6 100644
--- a/lib/metadata/lv_manip.c
+++ b/lib/metadata/lv_manip.c
@@ -5539,6 +5539,10 @@ static int _lvresize_volume(struct logical_volume *lv,
display_lvname(lv),
display_size(cmd, (uint64_t) old_extents * vg->extent_size), old_extents,
display_size(cmd, (uint64_t) lv->le_count * vg->extent_size), lv->le_count);
+
+ /* Resizing metadata and PV list is not specified -> maintain size of _pmspare volume */
+ if ((&vg->pvs == pvh) && lv_is_pool_metadata(lv))
+ (void) handle_pool_metadata_spare(vg, 0, pvh, 1);
}
return 1;