[lvm-devel] master - thin: fix maintenance of _pmspare
Zdenek Kabelac
zkabelac at sourceware.org
Wed Apr 3 11:29:59 UTC 2019
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=fcec6691f074f1123b9c04c3130f84e35d195b01
Commit: fcec6691f074f1123b9c04c3130f84e35d195b01
Parent: e27d0271557d4b93e87a70854b3c7f1cc6008155
Author: Zdenek Kabelac <zkabelac at redhat.com>
AuthorDate: Wed Apr 3 13:02:50 2019 +0200
Committer: Zdenek Kabelac <zkabelac at redhat.com>
CommitterDate: Wed Apr 3 13:28:54 2019 +0200
thin: fix maintenance of _pmspare
When metadata grows lvm2 may need to extend also _pmspare volume.
---
WHATS_NEW | 1 +
lib/metadata/lv_manip.c | 4 ++++
2 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/WHATS_NEW b/WHATS_NEW
index 00c96b5..81c3d71 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 a13ba31..76d18b0 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;
More information about the lvm-devel
mailing list