lvm2: cvs patch lv-mirror.patch

This commit is contained in:
Danny Rawlins 2008-10-24 01:06:49 +11:00
parent 48866969e1
commit 46aa804d2b
3 changed files with 46 additions and 2 deletions

View File

@ -1 +1,2 @@
e5b1927825ea2ef4a270606e881d9c88 LVM2.2.02.41.tgz
4e831566d153ece89684b0c5fa874d65 lvm-2.02.41_lv-mirror.patch

View File

@ -6,12 +6,15 @@
name=lvm2
version=2.02.41
release=1
source=(ftp://sources.redhat.com/pub/lvm2/LVM2.$version.tgz)
release=2
source=(ftp://sources.redhat.com/pub/lvm2/LVM2.$version.tgz
lvm-2.02.41_lv-mirror.patch)
build() {
cd LVM2.$version
patch -p 1 -i $SRC/lvm-2.02.41_lv-mirror.patch
./configure \
--prefix=/usr \
--exec-prefix= \

View File

@ -0,0 +1,40 @@
--- LVM2/lib/metadata/lv_manip.c 2008/10/17 10:57:15 1.157
+++ LVM2/lib/metadata/lv_manip.c 2008/10/23 11:21:04 1.158
@@ -2380,30 +2380,29 @@
return NULL;
}
- if (strstr(name, "_mimagetmp")) {
- log_very_verbose("Creating transient 'zero' LV"
- " for Mirror -> mirror up-convert.");
+ if (lv_is_active(lv_where) && strstr(name, "_mimagetmp")) {
+ log_very_verbose("Creating transient LV %s for mirror conversion in VG %s.", name, lv_where->vg->name);
- segtype = get_segtype_from_string(cmd, "zero");
+ segtype = get_segtype_from_string(cmd, "error");
if (!lv_add_virtual_segment(layer_lv, 0, lv_where->le_count, segtype)) {
- log_error("Creation of intermediate layer LV failed.");
+ log_error("Creation of transient LV %s for mirror conversion in VG %s failed.", name, lv_where->vg->name);
return NULL;
}
if (!vg_write(lv_where->vg)) {
- log_error("Failed to write intermediate VG metadata");
+ log_error("Failed to write intermediate VG %s metadata for mirror conversion.", lv_where->vg->name);
return NULL;
}
if (!vg_commit(lv_where->vg)) {
- log_error("Failed to commit intermediate VG metadata");
+ log_error("Failed to commit intermediate VG %s metadata for mirror conversion.", lv_where->vg->name);
vg_revert(lv_where->vg);
return NULL;
}
if (!activate_lv(cmd, layer_lv)) {
- log_error("Failed to resume intermediate 'zero' LV, %s", name);
+ log_error("Failed to resume transient error LV %s for mirror conversion in VG %s.", name, lv_where->vg->name);
return NULL;
}
}