Update to latest upstream release lvm v2.02.106.

This commit is contained in:
Peter Rajnoha 2014-04-11 11:42:25 +02:00
parent 987c15a436
commit 0a1e72c4b5
9 changed files with 185 additions and 139 deletions

1
.gitignore vendored
View File

@ -12,3 +12,4 @@
/LVM2.2.02.103.tgz /LVM2.2.02.103.tgz
/LVM2.2.02.104.tgz /LVM2.2.02.104.tgz
/LVM2.2.02.105.tgz /LVM2.2.02.105.tgz
/LVM2.2.02.106.tgz

View File

@ -1,7 +0,0 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
iEYEABECAAYFAlLdeZ8ACgkQIoGRwVZ+LBcElACfZ7bwrzwVSWLVzv4fxEw4L/PM
Ii4AniEmRU9GF+Rxx3s1xdOGfDoQn1AB
=87P7
-----END PGP SIGNATURE-----

7
LVM2.2.02.106.tgz.asc Normal file
View File

@ -0,0 +1,7 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (GNU/Linux)
iEYEABECAAYFAlNGwgEACgkQIoGRwVZ+LBepigCg7+sjOqeshsgDO0nGZTIcFOch
F44AoJWQWWLCE9fJULLu4KSZu3JZTyuU
=0JeO
-----END PGP SIGNATURE-----

View File

@ -1,63 +0,0 @@
commit bb237a04a0ecd44157ee59ce280e8c3bfc456ca1
Author: Peter Rajnoha <prajnoha@redhat.com>
Date: Mon Jan 27 11:19:09 2014 +0100
thin pool
diff --git a/WHATS_NEW b/WHATS_NEW
index 26b63ae..b755720 100644
--- a/WHATS_NEW
+++ b/WHATS_NEW
@@ -1,3 +1,7 @@
+Version 2.02.105 -
+====================================
+ Avoid exposing temporary devices when initializing thin pool volume.
+
Version 2.02.105 - 20th January 2014
====================================
Fix thin LV flagging for udev to skip scanning only if the LV is wiped.
diff --git a/lib/metadata/metadata-exported.h b/lib/metadata/metadata-exported.h
index 8e36891..cc58941 100644
--- a/lib/metadata/metadata-exported.h
+++ b/lib/metadata/metadata-exported.h
@@ -105,9 +105,10 @@
#define LV_NOSCAN UINT64_C(0x0000080000000000) /* LV - internal use only - the LV
should not be scanned */
#define LV_TEMPORARY UINT64_C(0x0000100000000000) /* LV - internal use only - the LV
- is supposed to be created and
- removed during single LVM
- command execution. */
+ is supposed to be created and
+ removed or reactivated with
+ this flag dropped during single
+ LVM command execution. */
/* Format features flags */
#define FMT_SEGMENTS 0x00000001U /* Arbitrary segment params? */
diff --git a/lib/metadata/thin_manip.c b/lib/metadata/thin_manip.c
index e12a8ad..3eeb757 100644
--- a/lib/metadata/thin_manip.c
+++ b/lib/metadata/thin_manip.c
@@ -484,7 +484,13 @@ int create_pool(struct logical_volume *pool_lv, const struct segment_type *segty
*
* FIXME: implement lazy clearing when activation is disabled
*/
- /* pool_lv is a new LV so the VG lock protects us */
+ /*
+ * pool_lv is a new LV so the VG lock protects us
+ * Pass in LV_TEMPORARY flag, since device is activated purely for wipe
+ * and later it is either deactivated (in cluster)
+ * or directly converted to invisible device via suspend/resume
+ */
+ pool_lv->status |= LV_TEMPORARY;
if (!activate_lv_local(pool_lv->vg->cmd, pool_lv) ||
/* Clear 4KB of metadata device for new thin-pool. */
!wipe_lv(pool_lv, (struct wipe_params) { .do_zero = 1 })) {
@@ -492,6 +498,7 @@ int create_pool(struct logical_volume *pool_lv, const struct segment_type *segty
pool_lv->name);
goto bad;
}
+ pool_lv->status &= ~LV_TEMPORARY;
}
if (dm_snprintf(name, sizeof(name), "%s_tmeta", pool_lv->name) < 0) {

View File

@ -3,10 +3,10 @@
2 files changed, 2 insertions(+), 2 deletions(-) 2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/conf/example.conf.in b/conf/example.conf.in diff --git a/conf/example.conf.in b/conf/example.conf.in
index ae571b6..241caa1 100644 index 2ed3fd6..8618a3e 100644
--- a/conf/example.conf.in --- a/conf/example.conf.in
+++ b/conf/example.conf.in +++ b/conf/example.conf.in
@@ -594,7 +594,7 @@ global { @@ -667,7 +667,7 @@ global {
# supported in clustered environment. If use_lvmetad=1 and locking_type=3 # supported in clustered environment. If use_lvmetad=1 and locking_type=3
# is set at the same time, LVM always issues a warning message about this # is set at the same time, LVM always issues a warning message about this
# and then it automatically disables lvmetad use. # and then it automatically disables lvmetad use.
@ -16,15 +16,15 @@ index ae571b6..241caa1 100644
# Full path of the utility called to check that a thin metadata device # Full path of the utility called to check that a thin metadata device
# is in a state that allows it to be used. # is in a state that allows it to be used.
diff --git a/lib/config/config_settings.h b/lib/config/config_settings.h diff --git a/lib/config/config_settings.h b/lib/config/config_settings.h
index c935920..a9f35e6 100644 index 932ba2e..79917e5 100644
--- a/lib/config/config_settings.h --- a/lib/config/config_settings.h
+++ b/lib/config/config_settings.h +++ b/lib/config/config_settings.h
@@ -158,7 +158,7 @@ cfg(global_metadata_read_only_CFG, "metadata_read_only", global_CFG_SECTION, 0, @@ -173,7 +173,7 @@ cfg(global_metadata_read_only_CFG, "metadata_read_only", global_CFG_SECTION, 0,
cfg(global_mirror_segtype_default_CFG, "mirror_segtype_default", global_CFG_SECTION, 0, CFG_TYPE_STRING, DEFAULT_MIRROR_SEGTYPE, vsn(2, 2, 87), NULL) cfg(global_mirror_segtype_default_CFG, "mirror_segtype_default", global_CFG_SECTION, 0, CFG_TYPE_STRING, DEFAULT_MIRROR_SEGTYPE, vsn(2, 2, 87), NULL)
cfg(global_raid10_segtype_default_CFG, "raid10_segtype_default", global_CFG_SECTION, 0, CFG_TYPE_STRING, DEFAULT_RAID10_SEGTYPE, vsn(2, 2, 99), NULL) cfg(global_raid10_segtype_default_CFG, "raid10_segtype_default", global_CFG_SECTION, 0, CFG_TYPE_STRING, DEFAULT_RAID10_SEGTYPE, vsn(2, 2, 99), NULL)
cfg(global_lvdisplay_shows_full_device_path_CFG, "lvdisplay_shows_full_device_path", global_CFG_SECTION, 0, CFG_TYPE_BOOL, DEFAULT_LVDISPLAY_SHOWS_FULL_DEVICE_PATH, vsn(2, 2, 89), NULL) cfg(global_lvdisplay_shows_full_device_path_CFG, "lvdisplay_shows_full_device_path", global_CFG_SECTION, CFG_PROFILABLE, CFG_TYPE_BOOL, DEFAULT_LVDISPLAY_SHOWS_FULL_DEVICE_PATH, vsn(2, 2, 89), NULL)
-cfg(global_use_lvmetad_CFG, "use_lvmetad", global_CFG_SECTION, 0, CFG_TYPE_BOOL, 0, vsn(2, 2, 93), NULL) -cfg(global_use_lvmetad_CFG, "use_lvmetad", global_CFG_SECTION, 0, CFG_TYPE_BOOL, 0, vsn(2, 2, 93), NULL)
+cfg(global_use_lvmetad_CFG, "use_lvmetad", global_CFG_SECTION, 0, CFG_TYPE_BOOL, 1, vsn(2, 2, 93), NULL) +cfg(global_use_lvmetad_CFG, "use_lvmetad", global_CFG_SECTION, 0, CFG_TYPE_BOOL, 1, vsn(2, 2, 93), NULL)
cfg(global_thin_check_executable_CFG, "thin_check_executable", global_CFG_SECTION, CFG_ALLOW_EMPTY, CFG_TYPE_STRING, THIN_CHECK_CMD, vsn(2, 2, 94), NULL) cfg(global_thin_check_executable_CFG, "thin_check_executable", global_CFG_SECTION, CFG_ALLOW_EMPTY, CFG_TYPE_STRING, THIN_CHECK_CMD, vsn(2, 2, 94), NULL)
cfg_array(global_thin_check_options_CFG, "thin_check_options", global_CFG_SECTION, 0, CFG_TYPE_STRING, "#S" DEFAULT_THIN_CHECK_OPTIONS, vsn(2, 2, 96), NULL) cfg_array(global_thin_check_options_CFG, "thin_check_options", global_CFG_SECTION, 0, CFG_TYPE_STRING, "#S" DEFAULT_THIN_CHECK_OPTIONS, vsn(2, 2, 96), NULL)
cfg_array(global_thin_disabled_features_CFG, "thin_disabled_features", global_CFG_SECTION, 0, CFG_TYPE_STRING, "#S", vsn(2, 2, 99), NULL) cfg_array(global_thin_disabled_features_CFG, "thin_disabled_features", global_CFG_SECTION, CFG_ALLOW_EMPTY, CFG_TYPE_STRING, NULL, vsn(2, 2, 99), NULL)

View File

@ -0,0 +1,18 @@
udev/10-dm.rules.in | 4 ----
1 file changed, 4 deletions(-)
diff --git a/udev/10-dm.rules.in b/udev/10-dm.rules.in
index 2755530..8d7a8ca 100644
--- a/udev/10-dm.rules.in
+++ b/udev/10-dm.rules.in
@@ -120,10 +120,6 @@ ENV{DM_UDEV_RULES_VSN}="2"
ENV{DM_UDEV_DISABLE_DM_RULES_FLAG}!="1", ENV{DM_NAME}=="?*", SYMLINK+="(DM_DIR)/$env{DM_NAME}"
-# We have to ignore further rule application for inappropriate events
-# and devices. But still send the notification if cookie exists.
-ENV{DM_UUID}=="mpath-?*", ENV{DM_ACTION}=="PATH_FAILED", GOTO="dm_disable"
-
# Avoid processing and scanning a DM device in the other (foreign)
# rules if it is in suspended state. However, we still keep 'disk'
# and 'DM subsystem' related rules enabled in this case.

View File

@ -1,35 +0,0 @@
commit e624fc8c0e75ea363e27cff824ca5a4521d051a7
Author: Peter Rajnoha <prajnoha@redhat.com>
Date: Mon Jan 27 11:13:02 2014 +0100
udev - cryptsetup
diff --git a/WHATS_NEW_DM b/WHATS_NEW_DM
index ce302f3..5aa3892 100644
--- a/WHATS_NEW_DM
+++ b/WHATS_NEW_DM
@@ -1,3 +1,7 @@
+Version 1.02.85 -
+===================================
+ Drop cryptsetup rules from 10-dm.rules - cryptsetup >= 1.1.3 sets them.
+
Version 1.02.84 - 20th January 2014
===================================
Revert activation of activated nodes if a node preload callback fails.
diff --git a/udev/10-dm.rules.in b/udev/10-dm.rules.in
index f7088f1..8d7a8ca 100644
--- a/udev/10-dm.rules.in
+++ b/udev/10-dm.rules.in
@@ -120,12 +120,6 @@ ENV{DM_UDEV_RULES_VSN}="2"
ENV{DM_UDEV_DISABLE_DM_RULES_FLAG}!="1", ENV{DM_NAME}=="?*", SYMLINK+="(DM_DIR)/$env{DM_NAME}"
-# We have to ignore further rule application for inappropriate events
-# and devices. But still send the notification if cookie exists.
-ENV{DM_UUID}=="mpath-?*", ENV{DM_ACTION}=="PATH_FAILED", GOTO="dm_disable"
-ENV{DM_UUID}=="CRYPT-TEMP-?*", GOTO="dm_disable"
-ENV{DM_UUID}!="?*", ENV{DM_NAME}=="temporary-cryptsetup-?*", GOTO="dm_disable"
-
# Avoid processing and scanning a DM device in the other (foreign)
# rules if it is in suspended state. However, we still keep 'disk'
# and 'DM subsystem' related rules enabled in this case.

179
lvm2.spec
View File

@ -1,9 +1,11 @@
%define device_mapper_version 1.02.84 %define device_mapper_version 1.02.85
%define enable_thin 1 %define enable_cache 1
%define enable_lvmetad 1
%define enable_cluster 1 %define enable_cluster 1
%define enable_cmirror 1 %define enable_cmirror 1
%define enable_lvmetad 1
%define enable_python 1
%define enable_thin 1
%define systemd_version 189-3 %define systemd_version 189-3
%define dracut_version 002-18 %define dracut_version 002-18
@ -12,7 +14,7 @@
%define corosync_version 1.99.9-1 %define corosync_version 1.99.9-1
%define dlm_version 3.99.1-1 %define dlm_version 3.99.1-1
%define libselinux_version 1.30.19-4 %define libselinux_version 1.30.19-4
%define persistent_data_version 0.2.7-1 %define persistent_data_version 0.3.2-1
%if 0%{?rhel} %if 0%{?rhel}
%ifnarch i686 x86_64 %ifnarch i686 x86_64
@ -36,16 +38,15 @@
Summary: Userland logical volume management tools Summary: Userland logical volume management tools
Name: lvm2 Name: lvm2
Version: 2.02.105 Version: 2.02.106
Release: 2%{?dist} Release: 1%{?dist}
License: GPLv2 License: GPLv2
Group: System Environment/Base Group: System Environment/Base
URL: http://sources.redhat.com/lvm2 URL: http://sources.redhat.com/lvm2
Source0: ftp://sources.redhat.com/pub/lvm2/releases/LVM2.%{version}.tgz Source0: ftp://sources.redhat.com/pub/lvm2/releases/LVM2.%{version}.tgz
Patch0: lvm2-set-default-preferred_names.patch Patch0: lvm2-set-default-preferred_names.patch
Patch1: lvm2-enable-lvmetad-by-default.patch Patch1: lvm2-enable-lvmetad-by-default.patch
Patch2: lvm2-udev-remove-rules-to-handle-inappropriate-events.patch Patch2: lvm2-remove-mpath-device-handling-from-udev-rules.patch
Patch3: lvm2-2_02_106-avoid-exposing-temporary-devices-when-initializing-thin-pool-volume.patch
BuildRequires: libselinux-devel >= %{libselinux_version}, libsepol-devel BuildRequires: libselinux-devel >= %{libselinux_version}, libsepol-devel
BuildRequires: libblkid-devel >= %{util_linux_version} BuildRequires: libblkid-devel >= %{util_linux_version}
@ -59,8 +60,10 @@ BuildRequires: module-init-tools
BuildRequires: pkgconfig BuildRequires: pkgconfig
BuildRequires: systemd-devel BuildRequires: systemd-devel
BuildRequires: systemd-units BuildRequires: systemd-units
%if %{enable_python}
BuildRequires: python2-devel BuildRequires: python2-devel
BuildRequires: python-setuptools BuildRequires: python-setuptools
%endif
Requires: %{name}-libs = %{version}-%{release} Requires: %{name}-libs = %{version}-%{release}
Requires: bash >= %{bash_version} Requires: bash >= %{bash_version}
Requires(post): systemd-units >= %{systemd_version}, systemd-sysv Requires(post): systemd-units >= %{systemd_version}, systemd-sysv
@ -83,8 +86,7 @@ or more physical volumes and creating one or more logical volumes
%setup -q -n LVM2.%{version} %setup -q -n LVM2.%{version}
%patch0 -p1 -b .preferred_names %patch0 -p1 -b .preferred_names
%patch1 -p1 -b .enable_lvmetad %patch1 -p1 -b .enable_lvmetad
%patch2 -p1 -b .udev_inappropriate_events %patch2 -p1 -b .udev_no_mpath
%patch3 -p1 -b .thin_temp_no_expose
%build %build
%define _default_pid_dir /run %define _default_pid_dir /run
@ -97,6 +99,10 @@ or more physical volumes and creating one or more logical volumes
%define configure_udev --with-udevdir=%{_udevdir} --enable-udev_sync %define configure_udev --with-udevdir=%{_udevdir} --enable-udev_sync
%if %{enable_cache}
%define configure_cache --with-cache=internal
%endif
%if %{enable_thin} %if %{enable_thin}
%define configure_thin --with-thin=internal --with-thin-check=%{_sbindir}/thin_check --with-thin-dump=%{_sbindir}/thin_dump --with-thin-repair=%{_sbindir}/thin_repair %define configure_thin --with-thin=internal --with-thin-check=%{_sbindir}/thin_check --with-thin-dump=%{_sbindir}/thin_dump --with-thin-repair=%{_sbindir}/thin_repair
%endif %endif
@ -105,7 +111,11 @@ or more physical volumes and creating one or more logical volumes
%define configure_lvmetad --enable-lvmetad --enable-udev-systemd-background-jobs %define configure_lvmetad --enable-lvmetad --enable-udev-systemd-background-jobs
%endif %endif
%configure --with-default-dm-run-dir=%{_default_dm_run_dir} --with-default-run-dir=%{_default_run_dir} --with-default-pid-dir=%{_default_pid_dir} --with-default-locking-dir=%{_default_locking_dir} --with-usrlibdir=%{_libdir} --enable-lvm1_fallback --enable-fsadm --with-pool=internal --enable-write_install --with-user= --with-group= --with-device-uid=0 --with-device-gid=6 --with-device-mode=0660 --enable-pkgconfig --enable-applib --enable-cmdlib --enable-python-bindings --enable-dmeventd %{?configure_cluster} %{?configure_cmirror} %{?configure_udev} %{?configure_thin} %{?configure_lvmetad} %if %{enable_python}
%define configure_python --enable-python-bindings
%endif
%configure --with-default-dm-run-dir=%{_default_dm_run_dir} --with-default-run-dir=%{_default_run_dir} --with-default-pid-dir=%{_default_pid_dir} --with-default-locking-dir=%{_default_locking_dir} --with-usrlibdir=%{_libdir} --enable-lvm1_fallback --enable-fsadm --with-pool=internal --enable-write_install --with-user= --with-group= --with-device-uid=0 --with-device-gid=6 --with-device-mode=0660 --enable-pkgconfig --enable-applib --enable-cmdlib --enable-dmeventd --enable-blkid_wiping %{?configure_python} %{?configure_cluster} %{?configure_cmirror} %{?configure_udev} %{?configure_thin} %{?configure_lvmetad} %{?configure_cache}
make %{?_smp_mflags} make %{?_smp_mflags}
@ -117,6 +127,18 @@ make install_systemd_units DESTDIR=$RPM_BUILD_ROOT
make install_systemd_generators DESTDIR=$RPM_BUILD_ROOT make install_systemd_generators DESTDIR=$RPM_BUILD_ROOT
make install_tmpfiles_configuration DESTDIR=$RPM_BUILD_ROOT make install_tmpfiles_configuration DESTDIR=$RPM_BUILD_ROOT
# add clvmd/cmirror systemd units to a separate lvm2-cluster-standalone/cmirror-standalone
# once we can rely on clvm resource instead and we provide the systemd units just for
# standalone LVM cluster configuration without cluster resource manager
%if %{enable_cluster}
rm -f $RPM_BUILD_ROOT/%{_prefix}/lib/systemd/lvm2-cluster-activation
rm -f $RPM_BUILD_ROOT/%{_unitdir}/lvm2-clvmd.service
rm -f $RPM_BUILD_ROOT/%{_unitdir}/lvm2-cluster-activation.service
%if %{enable_cmirror}
rm -f $RPM_BUILD_ROOT/%{_unitdir}/lvm2-cmirrord.service
%endif
%endif
%clean %clean
rm -rf $RPM_BUILD_ROOT rm -rf $RPM_BUILD_ROOT
@ -134,7 +156,7 @@ rm -rf $RPM_BUILD_ROOT
%endif %endif
%postun %postun
%systemd_postun_with_restart lvm2-monitor.service %systemd_postun lvm2-monitor.service
%if %{enable_lvmetad} %if %{enable_lvmetad}
%systemd_postun_with_restart lvm2-lvmetad.service %systemd_postun_with_restart lvm2-lvmetad.service
%endif %endif
@ -150,7 +172,7 @@ rm -rf $RPM_BUILD_ROOT
%doc COPYING COPYING.LIB README VERSION WHATS_NEW %doc COPYING COPYING.LIB README VERSION WHATS_NEW
%doc doc/lvm_fault_handling.txt %doc doc/lvm_fault_handling.txt
#Main binaries # Main binaries
%defattr(555,root,root,-) %defattr(555,root,root,-)
%{_sbindir}/blkdeactivate %{_sbindir}/blkdeactivate
%{_sbindir}/fsadm %{_sbindir}/fsadm
@ -207,6 +229,7 @@ rm -rf $RPM_BUILD_ROOT
%{_sbindir}/vgscan %{_sbindir}/vgscan
%{_sbindir}/vgsplit %{_sbindir}/vgsplit
%{_mandir}/man5/lvm.conf.5.gz %{_mandir}/man5/lvm.conf.5.gz
%{_mandir}/man7/lvmthin.7.gz
%{_mandir}/man8/blkdeactivate.8.gz %{_mandir}/man8/blkdeactivate.8.gz
%{_mandir}/man8/fsadm.8.gz %{_mandir}/man8/fsadm.8.gz
%{_mandir}/man8/lvchange.8.gz %{_mandir}/man8/lvchange.8.gz
@ -215,6 +238,8 @@ rm -rf $RPM_BUILD_ROOT
%{_mandir}/man8/lvdisplay.8.gz %{_mandir}/man8/lvdisplay.8.gz
%{_mandir}/man8/lvextend.8.gz %{_mandir}/man8/lvextend.8.gz
%{_mandir}/man8/lvm.8.gz %{_mandir}/man8/lvm.8.gz
%{_mandir}/man8/lvm2-activation-generator.8.gz
%{_mandir}/man8/lvm-dumpconfig.8.gz
%{_mandir}/man8/lvmchange.8.gz %{_mandir}/man8/lvmchange.8.gz
%{_mandir}/man8/lvmconf.8.gz %{_mandir}/man8/lvmconf.8.gz
%{_mandir}/man8/lvmdiskscan.8.gz %{_mandir}/man8/lvmdiskscan.8.gz
@ -274,7 +299,7 @@ rm -rf $RPM_BUILD_ROOT
%{_tmpfilesdir}/%{name}.conf %{_tmpfilesdir}/%{name}.conf
%{_unitdir}/blk-availability.service %{_unitdir}/blk-availability.service
%{_unitdir}/lvm2-monitor.service %{_unitdir}/lvm2-monitor.service
%attr(555, -, -) %{_prefix}/lib/systemd/system-generators/lvm2-activation-generator %attr(555, -, -) %{_prefix}/lib/systemd/system-generators/lvm2-activation-generator
%if %{enable_lvmetad} %if %{enable_lvmetad}
%{_unitdir}/lvm2-lvmetad.socket %{_unitdir}/lvm2-lvmetad.socket
%{_unitdir}/lvm2-lvmetad.service %{_unitdir}/lvm2-lvmetad.service
@ -301,10 +326,10 @@ the lvm2 libraries.
%defattr(444,root,root,-) %defattr(444,root,root,-)
%{_libdir}/liblvm2app.so %{_libdir}/liblvm2app.so
%{_libdir}/liblvm2cmd.so %{_libdir}/liblvm2cmd.so
%{_libdir}/libdevmapper-event-lvm2.so
%{_includedir}/lvm2app.h %{_includedir}/lvm2app.h
%{_includedir}/lvm2cmd.h %{_includedir}/lvm2cmd.h
%{_libdir}/pkgconfig/lvm2app.pc %{_libdir}/pkgconfig/lvm2app.pc
%{_libdir}/libdevmapper-event-lvm2.so
%package libs %package libs
Summary: Shared libraries for lvm2 Summary: Shared libraries for lvm2
@ -337,13 +362,15 @@ This package contains shared lvm2 libraries for applications.
%{_libdir}/device-mapper/libdevmapper-event-lvm2thin.so %{_libdir}/device-mapper/libdevmapper-event-lvm2thin.so
%endif %endif
%if %{enable_python}
%package python-libs %package python-libs
Summary: Python module to access LVM Summary: Python module to access LVM
License: LGPLv2 License: LGPLv2
Group: Development/Libraries Group: Development/Libraries
Provides: python-lvm = %{version}-%{release} Provides: python-lvm = %{version}-%{release}
Obsoletes: python-lvm < 2.02.98-2 Obsoletes: python-lvm < 2.02.98-2
Requires: %{name} = %{version}-%{release} Requires: %{name}-libs = %{version}-%{release}
%description python-libs %description python-libs
Python module to allow the creation and use of LVM Python module to allow the creation and use of LVM
@ -352,6 +379,8 @@ logical volumes, physical volumes, and volume groups.
%files python-libs %files python-libs
%{python_sitearch}/* %{python_sitearch}/*
%endif
############################################################################## ##############################################################################
# Cluster subpackage # Cluster subpackage
############################################################################## ##############################################################################
@ -375,13 +404,12 @@ Extensions to LVM2 to support clusters.
%post cluster %post cluster
/sbin/chkconfig --add clvmd /sbin/chkconfig --add clvmd
if [ -e %{_default_pid_dir}/clvmd.pid ]; then
if [ "$1" -gt "1" ] ; then /usr/sbin/clvmd -S || echo "Failed to restart clvmd daemon. Please, try manual restart."
/usr/sbin/clvmd -S >/dev/null 2>&1 || :
fi fi
%preun cluster %preun cluster
if [ "$1" = 0 ]; then if [ "$1" = "0" ]; then
/sbin/chkconfig --del clvmd /sbin/chkconfig --del clvmd
/sbin/lvmconf --disable-cluster /sbin/lvmconf --disable-cluster
fi fi
@ -475,7 +503,7 @@ for the kernel device-mapper.
%doc COPYING COPYING.LIB WHATS_NEW_DM VERSION_DM README %doc COPYING COPYING.LIB WHATS_NEW_DM VERSION_DM README
%doc udev/12-dm-permissions.rules %doc udev/12-dm-permissions.rules
%defattr(444,root,root,-) %defattr(444,root,root,-)
%attr(555,root,root) %{_sbindir}/dmsetup %attr(555, -, -) %{_sbindir}/dmsetup
%{_mandir}/man8/dmsetup.8.gz %{_mandir}/man8/dmsetup.8.gz
%{_udevdir}/10-dm.rules %{_udevdir}/10-dm.rules
%{_udevdir}/13-dm-disk.rules %{_udevdir}/13-dm-disk.rules
@ -536,16 +564,13 @@ of device-mapper devices.
%post -n device-mapper-event %post -n device-mapper-event
%systemd_post dm-event.socket %systemd_post dm-event.socket
if [ -e %{_default_pid_dir}/dmeventd.pid ]; then
%{_sbindir}/dmeventd -R || echo "Failed to restart dmeventd daemon. Please, try manual restart."
fi
%preun -n device-mapper-event %preun -n device-mapper-event
%systemd_preun dm-event.service dm-event.socket %systemd_preun dm-event.service dm-event.socket
%postun -n device-mapper-event
/bin/systemctl daemon-reload > /dev/null 2>&1 || :
if [ $1 -ge 1 ]; then
/bin/systemctl reload dm-event.service > /dev/null 2>&1 || :
fi
%files -n device-mapper-event %files -n device-mapper-event
%defattr(444,root,root,-) %defattr(444,root,root,-)
%attr(555, -, -) %{_sbindir}/dmeventd %attr(555, -, -) %{_sbindir}/dmeventd
@ -592,6 +617,106 @@ the device-mapper event library.
%{_libdir}/pkgconfig/devmapper-event.pc %{_libdir}/pkgconfig/devmapper-event.pc
%changelog %changelog
* Fri Apr 11 2014 Peter Rajnoha <prajnoha@redhat.com> - 2.02.106-1
- Require latest device-mapper-persistent-data 0.3.2-1.
- Fix ignored --dataalignment/dataalignmentoffset for pvcreate --restorefile.
- Fix lost information about bootloader area when using lvmetad.
- Don't require --major to be specified when using -My option on kernels > 2.4.
- Add configure --disable-thin_check_needs_check to support old thin_check.
- Use thin_check --clear-needs-check-flag by default.
- Add lvmthin man page to section 7.
- Ensure mapped device names are not too long in vg_validate and lvrename.
- Ensure resume failure in lvrename results in command failure.
- Add explicit error message when using lvdisplay -c -m.
- Report error if superfluous argument (e.g. PV name) supplied to pvscan.
- Fix error message for pvdisplay -c -m and add one for pvdisplay -c -s.
- Use EINVALID_CMD_LINE correctly instead of ECMD_FAILED in vgimport/export.
- Obtain list of known VGs from lvmetad for pvchange --all.
- Add man page for lvm-dumpconfig to section 8.
- Validate name for renamed sub LVs.
- When lvrename fails on argument parsing return EINVALID_CMD_LINE.
- Fix exit code regression in failing pvchange command (2.02.66).
- Include 'lvm dumpconfig --type missing' and '--type diff' output to lvmdump.
- Return failure when specifying negative size for pvresize.
- Fix memory corruption in cmd context refresh if clvmd leaks opened device.
- Reinitialise lvmcache properly on fork to fix premature polldaemon exit.
- Add 'lvm dumpconfig --type diff' to show differences from defaults.
- Fix swap signature detection for devices smaller then 2MB.
- Resolve memory release order for clvmd shutdown.
- Report error when lvm2 activation is released in critical_section.
- Fix memory corruption when pvscan reports long pv names.
- Do not report internal orphan VG names when reporting pvdisplay/pvscan.
- Fix pvdisplay -c man page referencing KB instead of sectors.
- Skip redundant synchronization calls on local clvmd.
- Use correct PATH_MAX for locking dir path.
- Do not check for backups when when its creation is disabled.
- Don't allow --mergedconfig without --type current in dumpconfig. Fix memleak.
- Make global/lvdisplay_shows_full_device_path lvm.conf setting profilable.
- Make global/{units|si_unit_consistency|suffix} lvm.conf setting profilable.
- Validate minimal chunk size for snapshot COW volume in lvconvert.
- Disallow lvconvert of origin to snapshot COW volume.
- Make report lvm.conf settings profilable.
- Add existing report settings to lvm.conf.
- Use VG read lock during 'pvscan --cache -aay' autoactivation.
- Issue a VG refresh before autoactivation only if the PV has changed/is new.
- Add flag to lvmetad protocol to indicate the PV scanned has changed/is new.
- Also add vgname to lvmetad protocol when referencing VGs for PVs scanned.
- Add man page for lvm2-activation-generator.
- Don't print an error and accept empty value for global/thin_disabled_features.
- Do not try to check empty pool with scheduled messages.
- Fix return value in pool_has_message() when quering for any message.
- Cleanup all client resources on clvmd exit.
- Use BLKID_CFLAGS when compiling with blkid support.
- Make lvm 'dumpconfig --type default' complete for it to be consumed by lvm.
- Run pvscan --cache via systemd-run in udev if the PV label is detected lost.
- Fix memleak when lvmetad discovers PV to appear on another device.
- Fix calculation of maximum size of COW device for snapshot (2.02.99).
- Do not allow stripe size to be bigger then extent size for lvresize.
- Zero snapshot COW header when creating read-only snapshot.
- Comment out config lines in dumpconfig output without default values defined.
- Improve detection of clustered mirror support.
- Enhance raid code with feature flags, for now checks for raid10.
- Move parsing of VG metadata from vg_commit() back to vg_write() (2.02.99)
- Avoid a PV label scan while in a critical section.
- Create /dev/disk/by-id/lvm-pv-uuid-<PV_UUID> symlink for each PV via udev.
- lvcreate computes RAID4/5/6 stripes if not given from # of allocatable PVs.
- Fix merging of old snapshot into thin volume origin.
- Use --ignoreskippedcluster in lvm2-monitor initscript/systemd unit.
- Do not use VG read/write state for LV read/write state.
- Use --ignoreskippedcluster in activation systemd units if use_lvmetad=0.
- Allow approximate allocation when specifying size in percentage terms.
- Add basic LVM support for cache[pool] segment types.
- Use local exclusive activation for creation of raid in cluster.
- Use correctly signed 64b constant when selecting raid volumes.
- Remove ExecReload from lvmetad systemd unit: lvmetad -R undefined. (2.02.98)
- Do not fork lvmetad if running under systemd.
- Wipe DM_snapshot_cow signature without prompt in new LVs with blkid wiping.
- Avoid exposing temporary devices when initializing raid metadata volumes.
- Add internal tags command to display any tags defined on the host.
- Prohibit use of external origin with size incompatible with thin pool.
- Avoid trying to convert single to thin pool and volume at the same time.
- Add support for partitions on ZFS zvol.
- Fix unwanted drop of hold flocks on forked children.
- Respect LVM_LVMETAD_PIDFILE env var for lvm command.
- Fix test when checking target version for available thin features.
- Detect thin feature external_origin_extend and limit extend when missing.
- Issue error if libbblkid detects signature and fails to return offset/length.
- Update autoconf config.guess/sub to 2014-01-01.
- Online thin pool metadata resize requires 1.10 kernel thin pool target.
- Check for sprintf error when building internal device path.
- Check for sprintf error when creating path for dm control node.
- When buffer for dm_get_library_version() is too small, return error code.
- Always reinitialize _name_mangling_mode in dm_lib_init().
- Stop timeout thread immediately when the last worker thread is finished.
- Fix dmeventd logging with parallel wait event processing.
- Reuse _node_send_messages() for validation of transaction_id in preload.
- Transaction_id could be lower by one only when messages are prepared.
- Wrap is_selinux_enabled() to be called just once.
- Use correctly signed 64b constant when working with raid volumes.
- Exit dmeventd with pidfile cleanup instead of raising SIGKILL on DIE request.
- Add new DM_EVENT_GET_PARAMETERS request to dmeventd protocol.
- Do not use systemd's reload for dmeventd restart, use dmeventd -R instead.
* Mon Jan 27 2014 Peter Rajnoha <prajnoha@redhat.com> - 2.02.105-2 * Mon Jan 27 2014 Peter Rajnoha <prajnoha@redhat.com> - 2.02.105-2
- Avoid exposing temporary devices when initializing thin pool volume. - Avoid exposing temporary devices when initializing thin pool volume.
- Remove udev rule for multipath's PATH_FAILED event processing, - Remove udev rule for multipath's PATH_FAILED event processing,

View File

@ -1 +1 @@
b5b3540661fc70bf329b526c1cfbcf3a LVM2.2.02.105.tgz 77f84279fb649b3dc4edad1c6d1a1b0e LVM2.2.02.106.tgz