diff --git a/LVM2.2.02.180.tgz b/LVM2.2.02.180.tgz
deleted file mode 100644
index b9a0cc2..0000000
--- a/LVM2.2.02.180.tgz
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:24997e26dfc916151707c9da504d38d0473bec3481a8230b676bc079041bead6
-size 2373004
diff --git a/LVM2.2.02.180.tgz.asc b/LVM2.2.02.180.tgz.asc
deleted file mode 100644
index 22a61dc..0000000
--- a/LVM2.2.02.180.tgz.asc
+++ /dev/null
@@ -1,17 +0,0 @@
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.22 (GNU/Linux)
-
-iQIcBAABAgAGBQJbUMBzAAoJELkRJDHlCQOfksgQAKHvpM0f4Nt354cmY6N+ha7i
-ikSv6aYsFHuHYOHFKJLPJBcNaMs3oZxBtVN69ZuV0cdJ7oiwrQzQzy94wvcaBOZy
-tWRLVI+grVU7Fp4uyFwGe4kkxUSGK3/lQrhtI8j+drwGvKk7O0dg8k/ayb9N1do5
-hx86WsucXDl8EFxCSYGu6D8DaL+5zNhumIBXrjp5IbQunckw1/hRqstfMfs/q7dm
-7dLlrCWXuEL6AwHYvSI8BorO2vRX2iUBvovNneooGUnfz+c06VawhgmwMVA3j/Lk
-jOyT9ytVAgnI/yvMHKB7RUSbjCHqppvxg0K0Fs3ex2rca+GiSrtXoxsK83xVaqiS
-8J3amb46ItLsE+5XUFzsSfFCxAdzEGqdW+/YmgQNRQ0OXHlsg98hTD9zNbhNMIqj
-RtlPqzFKdIZfhgRAY3fw2TEAaKkuBG1+AeeJHLrPZFcDOXHyvJqoPYcMb3QeANCx
-RhrMNLvs4MKlhXUkeimBJZTKXSCCIwaqtH8rOtYYM9Ei50AQYZddUObVLBoQB01Y
-MxC87m1eZgIKipWTNfEXm41M4tLPebkaxT9+IBp38yVcZ1jeXxOk41EXtzcs3PII
-/SlUw66qokTgSyXFH+mptqxfB3Xkk8li5wv31yOiVY9MZQzt8fvz/veY5uEGxU/a
-1et7yfJMpeJYrMuhtCL4
-=kQvz
------END PGP SIGNATURE-----
diff --git a/LVM2.2.03.05.tgz b/LVM2.2.03.05.tgz
new file mode 100644
index 0000000..0e42114
--- /dev/null
+++ b/LVM2.2.03.05.tgz
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ca52815c999b20c6d25e3192f142f081b93d01f07b9d787e99664b169dba2700
+size 2427412
diff --git a/LVM2.2.03.05.tgz.asc b/LVM2.2.03.05.tgz.asc
new file mode 100644
index 0000000..385c6ae
--- /dev/null
+++ b/LVM2.2.03.05.tgz.asc
@@ -0,0 +1,17 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.22 (GNU/Linux)
+
+iQIcBAABAgAGBQJdBJ/2AAoJELkRJDHlCQOfLpcP/3eY1mo/MlhPwxsz23a8v7sW
+0NYZKqTC0N+xOc0lZ4kwDl1ru/b59T5gGwDinmXCqjP41fvT1PZlFklrsffyCI7i
+jy1QO/a06r+w8xTmdwHL08tuhkO6gh8+BKsBChYsJhdGrgBibNRO9HvIlU8LpLFs
+i96GXbjoZZ3irKxy+1OxCFer1Hd2ISbBBq/YHnGlA1h24awBsiL4YDNMxC+pIEiV
+nqlypDFqeNe29y/IRWrq8D3WxOm5YK40lzTi59blvl5OAIZLnhtRKm+roGTuoML5
+V/ZKbTYxr/LTclUS5cIkSxQEiJxNq0TIP8zVspgAroQFKx5JX8C40bzWEDTVnrsx
+3wfJWN0jPyBwPox8/QjqScE1MJ+5G8iUOxbf/SuIpp103eBJ4RR+HzaQeig7BgP/
+cpk80CZwKzlKTMYedmuAE4WK5igqncrdoW2AbtVvVQLUk7cp3tdLvxMyH2z+jv5D
+DCpWHqc5eB+sMmD4+Vjp6Mrg2ViSEMdAmorTX0TPrd5meos39Ged3SUZ5v0M7N0q
+Lhj2jT2oqPGXKp6/7HLGd4do7zBqX4oaJ1DcfhsEi2kEBIUYdE5o9qlqn22QacpJ
+N/waVKjEjmi1AiMiAaZAP/WuutH3UJmpdRZn1Qvd+Xlx1Iw0YbY/8S9NAtKazzFq
+iF8g3kZyRIcBfvq94k5q
+=NABD
+-----END PGP SIGNATURE-----
diff --git a/_multibuild b/_multibuild
new file mode 100644
index 0000000..f75b3a8
--- /dev/null
+++ b/_multibuild
@@ -0,0 +1,4 @@
+
+ devicemapper
+ lockd
+
diff --git a/bsc1080299-detect-clvm-properly.patch b/bsc1080299-detect-clvm-properly.patch
deleted file mode 100644
index a9c2fce..0000000
--- a/bsc1080299-detect-clvm-properly.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-Index: LVM2.2.02.178/configure
-===================================================================
---- LVM2.2.02.178.orig/configure
-+++ LVM2.2.02.178/configure
-@@ -10888,8 +10888,6 @@ if [ `expr x"$CLVMD" : '.*corosync.*'` !
- fi
-
- ################################################################################
--if test "$CLVMD" != none; then
--
- # Check whether --with-clvmd-pidfile was given.
- if test "${with_clvmd_pidfile+set}" = set; then :
- withval=$with_clvmd_pidfile; CLVMD_PIDFILE=$withval
-@@ -10902,8 +10900,6 @@ cat >>confdefs.h <<_ACEOF
- #define CLVMD_PIDFILE "$CLVMD_PIDFILE"
- _ACEOF
-
--fi
--
- ################################################################################
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build cluster mirror log daemon" >&5
- $as_echo_n "checking whether to build cluster mirror log daemon... " >&6; }
-Index: LVM2.2.02.178/configure.ac
-===================================================================
---- LVM2.2.02.178.orig/configure.ac
-+++ LVM2.2.02.178/configure.ac
-@@ -959,7 +959,6 @@ fi
-
- ################################################################################
- dnl -- clvmd pidfile
--if test "$CLVMD" != none; then
- AC_ARG_WITH(clvmd-pidfile,
- AC_HELP_STRING([--with-clvmd-pidfile=PATH],
- [clvmd pidfile [PID_DIR/clvmd.pid]]),
-@@ -967,7 +966,6 @@ if test "$CLVMD" != none; then
- CLVMD_PIDFILE="$DEFAULT_PID_DIR/clvmd.pid")
- AC_DEFINE_UNQUOTED(CLVMD_PIDFILE, ["$CLVMD_PIDFILE"],
- [Path to clvmd pidfile.])
--fi
-
- ################################################################################
- dnl -- Build cluster mirror log daemon
diff --git a/bug-1072624_test-lvmetad_dump-always-timed-out-when-using-nc.patch b/bug-1072624_test-lvmetad_dump-always-timed-out-when-using-nc.patch
deleted file mode 100644
index 57f57eb..0000000
--- a/bug-1072624_test-lvmetad_dump-always-timed-out-when-using-nc.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 6ff44e96eb804f9024bf3f606d207bd863f0e672 Mon Sep 17 00:00:00 2001
-From: Eric Ren
-Date: Wed, 13 Dec 2017 18:53:00 +0800
-Subject: [PATCH] test: lvmetad_dump always timed out when using nc
-
-lvmetad_dump uses either "socat" or "nc" to communicate
-with lvmetad. But when using "nc" if "socat" is not
-available, nc will listen forever by default, causing the
-testcase timed out.
-
-Signed-off-by: Eric Ren
----
- test/lib/aux.sh | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/test/lib/aux.sh b/test/lib/aux.sh
-index 6bc7bd47e..4603c1504 100644
---- a/test/lib/aux.sh
-+++ b/test/lib/aux.sh
-@@ -243,14 +243,14 @@ lvmetad_talk() {
- local use=nc
- if type -p socat >& /dev/null; then
- use=socat
-- elif echo | not nc -U "$TESTDIR/lvmetad.socket" ; then
-+ elif echo | not nc -w 1 -U "$TESTDIR/lvmetad.socket" ; then
- echo "WARNING: Neither socat nor nc -U seems to be available." 1>&2
- echo "## failed to contact lvmetad."
- return 1
- fi
-
- if test "$use" = nc ; then
-- nc -U "$TESTDIR/lvmetad.socket"
-+ nc -w 1 -U "$TESTDIR/lvmetad.socket"
- else
- socat "unix-connect:$TESTDIR/lvmetad.socket" -
- fi | tee -a lvmetad-talk.txt
---
-2.13.6
-
diff --git a/bug-1114113_metadata-prevent-writing-beyond-metadata-area.patch b/bug-1114113_metadata-prevent-writing-beyond-metadata-area.patch
deleted file mode 100644
index 2083ccf..0000000
--- a/bug-1114113_metadata-prevent-writing-beyond-metadata-area.patch
+++ /dev/null
@@ -1,336 +0,0 @@
-From ab27d5dc2a5c3bf23ab8fed438f1542015dc723d Mon Sep 17 00:00:00 2001
-From: David Teigland
-Date: Mon, 29 Oct 2018 11:06:00 -0500
-Subject: [PATCH] metadata: prevent writing beyond metadata area
-
-lvm uses a bcache block size of 128K. A bcache block
-at the end of the metadata area will overlap the PEs
-from which LVs are allocated. How much depends on
-alignments. When lvm reads and writes one of these
-bcache blocks to update VG metadata, it can also be
-reading and writing PEs that belong to an LV.
-
-If these overlapping PEs are being written to by the
-LV user (e.g. filesystem) at the same time that lvm
-is modifying VG metadata in the overlapping bcache
-block, then the user's updates to the PEs can be lost.
-
-This patch is a quick hack to prevent lvm from writing
-past the end of the metadata area.
----
- lib/device/bcache.c | 79 +++++++++++++++++++++++++++++++++++++++++--
- lib/device/bcache.h | 3 ++
- lib/format_text/format-text.c | 10 ++++++
- lib/label/label.c | 35 ++++++++++++++++++-
- lib/label/label.h | 2 ++
- lib/metadata/mirror.c | 4 +++
- 6 files changed, 130 insertions(+), 3 deletions(-)
-
-diff --git a/lib/device/bcache.c b/lib/device/bcache.c
-index 531d83b10..62352563a 100644
---- a/lib/device/bcache.c
-+++ b/lib/device/bcache.c
-@@ -156,6 +156,10 @@ static void _async_destroy(struct io_engine *ioe)
- dm_free(e);
- }
-
-+static int _last_byte_fd;
-+static uint64_t _last_byte_offset;
-+static int _last_byte_sector_size;
-+
- static bool _async_issue(struct io_engine *ioe, enum dir d, int fd,
- sector_t sb, sector_t se, void *data, void *context)
- {
-@@ -163,12 +167,53 @@ static bool _async_issue(struct io_engine *ioe, enum dir d, int fd,
- struct iocb *cb_array[1];
- struct control_block *cb;
- struct async_engine *e = _to_async(ioe);
-+ sector_t offset;
-+ sector_t nbytes;
-+ sector_t limit_nbytes;
-+ sector_t extra_nbytes = 0;
-
- if (((uintptr_t) data) & e->page_mask) {
- log_warn("misaligned data buffer");
- return false;
- }
-
-+ offset = sb << SECTOR_SHIFT;
-+ nbytes = (se - sb) << SECTOR_SHIFT;
-+
-+ /*
-+ * If bcache block goes past where lvm wants to write, then clamp it.
-+ */
-+ if ((d == DIR_WRITE) && _last_byte_offset && (fd == _last_byte_fd)) {
-+ if (offset > _last_byte_offset) {
-+ log_error("Limit write at %llu len %llu beyond last byte %llu",
-+ (unsigned long long)offset,
-+ (unsigned long long)nbytes,
-+ (unsigned long long)_last_byte_offset);
-+ return false;
-+ }
-+
-+ if (offset + nbytes > _last_byte_offset) {
-+ limit_nbytes = _last_byte_offset - offset;
-+ if (limit_nbytes % _last_byte_sector_size)
-+ extra_nbytes = _last_byte_sector_size - (limit_nbytes % _last_byte_sector_size);
-+
-+ if (extra_nbytes) {
-+ log_debug("Limit write at %llu len %llu to len %llu rounded to %llu",
-+ (unsigned long long)offset,
-+ (unsigned long long)nbytes,
-+ (unsigned long long)limit_nbytes,
-+ (unsigned long long)(limit_nbytes + extra_nbytes));
-+ nbytes = limit_nbytes + extra_nbytes;
-+ } else {
-+ log_debug("Limit write at %llu len %llu to len %llu",
-+ (unsigned long long)offset,
-+ (unsigned long long)nbytes,
-+ (unsigned long long)limit_nbytes);
-+ nbytes = limit_nbytes;
-+ }
-+ }
-+ }
-+
- cb = _cb_alloc(e->cbs, context);
- if (!cb) {
- log_warn("couldn't allocate control block");
-@@ -179,10 +224,22 @@ static bool _async_issue(struct io_engine *ioe, enum dir d, int fd,
-
- cb->cb.aio_fildes = (int) fd;
- cb->cb.u.c.buf = data;
-- cb->cb.u.c.offset = sb << SECTOR_SHIFT;
-- cb->cb.u.c.nbytes = (se - sb) << SECTOR_SHIFT;
-+ cb->cb.u.c.offset = offset;
-+ cb->cb.u.c.nbytes = nbytes;
- cb->cb.aio_lio_opcode = (d == DIR_READ) ? IO_CMD_PREAD : IO_CMD_PWRITE;
-
-+#if 0
-+ if (d == DIR_READ) {
-+ log_debug("io R off %llu bytes %llu",
-+ (unsigned long long)cb->cb.u.c.offset,
-+ (unsigned long long)cb->cb.u.c.nbytes);
-+ } else {
-+ log_debug("io W off %llu bytes %llu",
-+ (unsigned long long)cb->cb.u.c.offset,
-+ (unsigned long long)cb->cb.u.c.nbytes);
-+ }
-+#endif
-+
- cb_array[0] = &cb->cb;
- do {
- r = io_submit(e->aio_context, 1, cb_array);
-@@ -1153,3 +1210,21 @@ bool bcache_invalidate_fd(struct bcache *cache, int fd)
-
- //----------------------------------------------------------------
-
-+void bcache_set_last_byte(struct bcache *cache, int fd, uint64_t offset, int sector_size)
-+{
-+ _last_byte_fd = fd;
-+ _last_byte_offset = offset;
-+ _last_byte_sector_size = sector_size;
-+ if (!sector_size)
-+ _last_byte_sector_size = 512;
-+}
-+
-+void bcache_unset_last_byte(struct bcache *cache, int fd)
-+{
-+ if (_last_byte_fd == fd) {
-+ _last_byte_fd = 0;
-+ _last_byte_offset = 0;
-+ _last_byte_sector_size = 0;
-+ }
-+}
-+
-diff --git a/lib/device/bcache.h b/lib/device/bcache.h
-index b0aebb49d..cb902ef36 100644
---- a/lib/device/bcache.h
-+++ b/lib/device/bcache.h
-@@ -158,6 +158,9 @@ bool bcache_write_bytes(struct bcache *cache, int fd, uint64_t start, size_t len
- bool bcache_zero_bytes(struct bcache *cache, int fd, uint64_t start, size_t len);
- bool bcache_set_bytes(struct bcache *cache, int fd, uint64_t start, size_t len, uint8_t val);
-
-+void bcache_set_last_byte(struct bcache *cache, int fd, uint64_t offset, int sector_size);
-+void bcache_unset_last_byte(struct bcache *cache, int fd);
-+
- //----------------------------------------------------------------
-
- #endif
-diff --git a/lib/format_text/format-text.c b/lib/format_text/format-text.c
-index 5c7b72f8e..4160ba810 100644
---- a/lib/format_text/format-text.c
-+++ b/lib/format_text/format-text.c
-@@ -400,10 +400,14 @@ static int _raw_write_mda_header(const struct format_type *fmt,
- MDA_HEADER_SIZE -
- sizeof(mdah->checksum_xl)));
-
-+ dev_set_last_byte(dev, start_byte + MDA_HEADER_SIZE);
-+
- if (!dev_write_bytes(dev, start_byte, MDA_HEADER_SIZE, mdah)) {
-+ dev_unset_last_byte(dev);
- log_error("Failed to write mda header to %s fd %d", dev_name(dev), dev->bcache_fd);
- return 0;
- }
-+ dev_unset_last_byte(dev);
-
- return 1;
- }
-@@ -677,10 +681,13 @@ static int _vg_write_raw(struct format_instance *fid, struct volume_group *vg,
- (unsigned long long)(mdac->rlocn.size - new_wrap),
- (unsigned long long)new_wrap);
-
-+ dev_set_last_byte(mdac->area.dev, mdac->area.start + mdah->size);
-+
- if (!dev_write_bytes(mdac->area.dev, mdac->area.start + mdac->rlocn.offset,
- (size_t) (mdac->rlocn.size - new_wrap),
- fidtc->raw_metadata_buf)) {
- log_error("Failed to write metadata to %s fd %d", dev_name(mdac->area.dev), mdac->area.dev->bcache_fd);
-+ dev_unset_last_byte(mdac->area.dev);
- goto out;
- }
-
-@@ -694,10 +701,13 @@ static int _vg_write_raw(struct format_instance *fid, struct volume_group *vg,
- (size_t) new_wrap,
- fidtc->raw_metadata_buf + mdac->rlocn.size - new_wrap)) {
- log_error("Failed to write metadata wrap to %s fd %d", dev_name(mdac->area.dev), mdac->area.dev->bcache_fd);
-+ dev_unset_last_byte(mdac->area.dev);
- goto out;
- }
- }
-
-+ dev_unset_last_byte(mdac->area.dev);
-+
- mdac->rlocn.checksum = calc_crc(INITIAL_CRC, (uint8_t *)fidtc->raw_metadata_buf,
- (uint32_t) (mdac->rlocn.size -
- new_wrap));
-diff --git a/lib/label/label.c b/lib/label/label.c
-index e5aa2c129..5377847b3 100644
---- a/lib/label/label.c
-+++ b/lib/label/label.c
-@@ -173,6 +173,7 @@ int label_write(struct device *dev, struct label *label)
- {
- char buf[LABEL_SIZE] __attribute__((aligned(8)));
- struct label_header *lh = (struct label_header *) buf;
-+ uint64_t offset;
- int r = 1;
-
- if (!label->labeller->ops->write) {
-@@ -207,11 +208,17 @@ int label_write(struct device *dev, struct label *label)
- return 0;
- }
-
-- if (!dev_write_bytes(dev, label->sector << SECTOR_SHIFT, LABEL_SIZE, buf)) {
-+ offset = label->sector << SECTOR_SHIFT;
-+
-+ dev_set_last_byte(dev, offset + LABEL_SIZE);
-+
-+ if (!dev_write_bytes(dev, offset, LABEL_SIZE, buf)) {
- log_debug_devs("Failed to write label to %s", dev_name(dev));
- r = 0;
- }
-
-+ dev_unset_last_byte(dev);
-+
- return r;
- }
-
-@@ -1354,9 +1361,12 @@ bool dev_write_zeros(struct device *dev, uint64_t start, size_t len)
- }
- }
-
-+ dev_set_last_byte(dev, start + len);
-+
- if (!bcache_zero_bytes(scan_bcache, dev->bcache_fd, start, len)) {
- log_error("Error writing device %s at %llu length %u.",
- dev_name(dev), (unsigned long long)start, (uint32_t)len);
-+ dev_unset_last_byte(dev);
- label_scan_invalidate(dev);
- return false;
- }
-@@ -1364,9 +1374,11 @@ bool dev_write_zeros(struct device *dev, uint64_t start, size_t len)
- if (!bcache_flush(scan_bcache)) {
- log_error("Error writing device %s at %llu length %u.",
- dev_name(dev), (unsigned long long)start, (uint32_t)len);
-+ dev_unset_last_byte(dev);
- label_scan_invalidate(dev);
- return false;
- }
-+ dev_unset_last_byte(dev);
- return true;
- }
-
-@@ -1400,9 +1412,12 @@ bool dev_set_bytes(struct device *dev, uint64_t start, size_t len, uint8_t val)
- }
- }
-
-+ dev_set_last_byte(dev, start + len);
-+
- if (!bcache_set_bytes(scan_bcache, dev->bcache_fd, start, len, val)) {
- log_error("Error writing device %s at %llu length %u.",
- dev_name(dev), (unsigned long long)start, (uint32_t)len);
-+ dev_unset_last_byte(dev);
- label_scan_invalidate(dev);
- return false;
- }
-@@ -1410,9 +1425,27 @@ bool dev_set_bytes(struct device *dev, uint64_t start, size_t len, uint8_t val)
- if (!bcache_flush(scan_bcache)) {
- log_error("Error writing device %s at %llu length %u.",
- dev_name(dev), (unsigned long long)start, (uint32_t)len);
-+ dev_unset_last_byte(dev);
- label_scan_invalidate(dev);
- return false;
- }
-+
-+ dev_unset_last_byte(dev);
- return true;
- }
-
-+void dev_set_last_byte(struct device *dev, uint64_t offset)
-+{
-+ unsigned int phys_block_size = 0;
-+ unsigned int block_size = 0;
-+
-+ dev_get_block_size(dev, &phys_block_size, &block_size);
-+
-+ bcache_set_last_byte(scan_bcache, dev->bcache_fd, offset, phys_block_size);
-+}
-+
-+void dev_unset_last_byte(struct device *dev)
-+{
-+ bcache_unset_last_byte(scan_bcache, dev->bcache_fd);
-+}
-+
-diff --git a/lib/label/label.h b/lib/label/label.h
-index 5b83bc734..ae6a4f5f4 100644
---- a/lib/label/label.h
-+++ b/lib/label/label.h
-@@ -126,5 +126,7 @@ bool dev_read_bytes(struct device *dev, uint64_t start, size_t len, void *data);
- bool dev_write_bytes(struct device *dev, uint64_t start, size_t len, void *data);
- bool dev_write_zeros(struct device *dev, uint64_t start, size_t len);
- bool dev_set_bytes(struct device *dev, uint64_t start, size_t len, uint8_t val);
-+void dev_set_last_byte(struct device *dev, uint64_t offset);
-+void dev_unset_last_byte(struct device *dev);
-
- #endif
-diff --git a/lib/metadata/mirror.c b/lib/metadata/mirror.c
-index c7d8a9e94..b1dcaa0e2 100644
---- a/lib/metadata/mirror.c
-+++ b/lib/metadata/mirror.c
-@@ -302,10 +302,14 @@ static int _write_log_header(struct cmd_context *cmd, struct logical_volume *lv)
- return 0;
- }
-
-+ dev_set_last_byte(dev, sizeof(log_header));
-+
- if (!dev_write_bytes(dev, UINT64_C(0), sizeof(log_header), &log_header)) {
-+ dev_unset_last_byte(dev);
- log_error("Failed to write log header to %s.", name);
- return 0;
- }
-+ dev_unset_last_byte(dev);
-
- label_scan_invalidate(dev);
-
---
-2.12.3
-
diff --git a/bug-1135984_cache-support-no_discard_passdown.patch b/bug-1135984_cache-support-no_discard_passdown.patch
deleted file mode 100644
index 6ac400b..0000000
--- a/bug-1135984_cache-support-no_discard_passdown.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From adf9bf80a32500b45b37eb24b98fa7c2c933019e Mon Sep 17 00:00:00 2001
-From: Zdenek Kabelac
-Date: Wed, 5 Jun 2019 14:31:34 +0200
-Subject: [PATCH] cache: support no_discard_passdown
-
-Recent kernel version from kernel commit:
-de7180ff908b2bc0342e832dbdaa9a5f1ecaa33a
-started to report in cache status line new flag:
-no_discard_passdown
-
-Whenever lvm spots unknown status it reports:
-Unknown feature in status:
-
-So add reconginzing this feature flag and also report this with
-
-'lvs -o+kernel_discards'
-
-When no_discard_passdown is found in status 'nopassdown' gets reported
-for this field (roughly matching what we report for thin-pools).
----
- WHATS_NEW | 1 +
- WHATS_NEW_DM | 1 +
- lib/metadata/lv.c | 5 +++++
- libdm/libdevmapper.h | 1 +
- libdm/libdm-targets.c | 2 ++
- 5 files changed, 10 insertions(+)
-
-diff --git a/lib/metadata/lv.c b/lib/metadata/lv.c
-index 2abe42db7..538b292a2 100644
---- a/lib/metadata/lv.c
-+++ b/lib/metadata/lv.c
-@@ -245,6 +245,11 @@ char *lvseg_kernel_discards_dup_with_info_and_seg_status(struct dm_pool *mem, co
- return 0;
- }
- s = get_pool_discards_name(d);
-+ } else if (lvdm->seg_status.type == SEG_STATUS_CACHE) {
-+ if (lvdm->seg_status.cache->feature_flags &
-+ DM_CACHE_FEATURE_NO_DISCARD_PASSDOWN) {
-+ s = "nopassdown";
-+ }
- }
-
- if (!(ret = dm_pool_strdup(mem, s))) {
-diff --git a/libdm/libdevmapper.h b/libdm/libdevmapper.h
-index 19032d775..e885f52ae 100644
---- a/libdm/libdevmapper.h
-+++ b/libdm/libdevmapper.h
-@@ -1893,6 +1893,7 @@ int dm_tree_node_add_raid_target_with_params_v2(struct dm_tree_node *node,
- #define DM_CACHE_FEATURE_WRITETHROUGH 0x00000002
- #define DM_CACHE_FEATURE_PASSTHROUGH 0x00000004
- #define DM_CACHE_FEATURE_METADATA2 0x00000008 /* cache v1.10 */
-+#define DM_CACHE_FEATURE_NO_DISCARD_PASSDOWN 0x00000010
-
- struct dm_config_node;
- /*
-diff --git a/libdm/libdm-targets.c b/libdm/libdm-targets.c
-index 876678943..d0a8b4332 100644
---- a/libdm/libdm-targets.c
-+++ b/libdm/libdm-targets.c
-@@ -296,6 +296,8 @@ int dm_get_status_cache(struct dm_pool *mem, const char *params,
- s->feature_flags |= DM_CACHE_FEATURE_PASSTHROUGH;
- else if (!strncmp(p, "metadata2 ", 10))
- s->feature_flags |= DM_CACHE_FEATURE_METADATA2;
-+ else if (!strncmp(p, "no_discard_passdown ", 20))
-+ s->feature_flags |= DM_CACHE_FEATURE_NO_DISCARD_PASSDOWN;
- else
- log_error("Unknown feature in status: %s", params);
-
---
-2.12.3
-
diff --git a/bug-1137296_pvremove-vgextend-fix-using-device-aliases-with-lvmetad.patch b/bug-1137296_pvremove-vgextend-fix-using-device-aliases-with-lvmetad.patch
deleted file mode 100644
index 1bb5af4..0000000
--- a/bug-1137296_pvremove-vgextend-fix-using-device-aliases-with-lvmetad.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From b13ebfa4c289a5bc6eb4f8ba26126db8e6d78296 Mon Sep 17 00:00:00 2001
-From: David Teigland
-Date: Wed, 26 Jun 2019 16:03:42 -0500
-Subject: [PATCH] pvremove/vgextend: fix using device aliases with lvmetad
-
-These commands were looking for the requested device alias
-before dev_cache_scan had created the list of devs on the
-system, so they would fail and report the dev wasn't found.
----
- tools/toollib.c | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
-diff --git a/tools/toollib.c b/tools/toollib.c
-index 3221e5f1ca..1b01cccfa2 100644
---- a/tools/toollib.c
-+++ b/tools/toollib.c
-@@ -5543,6 +5543,15 @@ int pvcreate_each_device(struct cmd_context *cmd,
-
- lvmcache_label_scan(cmd);
-
-+ /*
-+ * When using lvmetad, we want to do a dev cache scan here (if not done
-+ * already) so that the dev_cache_get just below will be able to find
-+ * device aliases. When not using lvmetad, the label_scan just above
-+ * has done dev_cache_scan, and this will not be run.
-+ */
-+ if (!dev_cache_has_scanned())
-+ dev_cache_scan();
-+
- /*
- * Translate arg names into struct device's.
- */
---
-2.21.0
-
diff --git a/bug-1149408_Fix-rounding-writes-up-to-sector-size.patch b/bug-1149408_Fix-rounding-writes-up-to-sector-size.patch
new file mode 100644
index 0000000..73e2fbb
--- /dev/null
+++ b/bug-1149408_Fix-rounding-writes-up-to-sector-size.patch
@@ -0,0 +1,303 @@
+From 7f347698e3d09b15b4f9aed9c61239fda7b9e8c8 Mon Sep 17 00:00:00 2001
+From: David Teigland
+Date: Fri, 26 Jul 2019 14:21:08 -0500
+Subject: [PATCH] Fix rounding writes up to sector size
+
+Do this at two levels, although one would be enough to
+fix the problem seen recently:
+
+- Ignore any reported sector size other than 512 of 4096.
+ If either sector size (physical or logical) is reported
+ as 512, then use 512. If neither are reported as 512,
+ and one or the other is reported as 4096, then use 4096.
+ If neither is reported as either 512 or 4096, then use 512.
+
+- When rounding up a limited write in bcache to be a multiple
+ of the sector size, check that the resulting write size is
+ not larger than the bcache block itself. (This shouldn't
+ happen if the sector size is 512 or 4096.)
+---
+ lib/device/bcache.c | 89 +++++++++++++++++++++++++++++++++++++++++++++++++++--
+ lib/device/dev-io.c | 52 +++++++++++++++++++++++++++++++
+ lib/device/device.h | 8 +++--
+ lib/label/label.c | 30 ++++++++++++++----
+ 4 files changed, 169 insertions(+), 10 deletions(-)
+
+diff --git a/lib/device/bcache.c b/lib/device/bcache.c
+index 7b0935352..04fbf3521 100644
+--- a/lib/device/bcache.c
++++ b/lib/device/bcache.c
+@@ -169,6 +169,7 @@ static bool _async_issue(struct io_engine *ioe, enum dir d, int fd,
+ sector_t offset;
+ sector_t nbytes;
+ sector_t limit_nbytes;
++ sector_t orig_nbytes;
+ sector_t extra_nbytes = 0;
+
+ if (((uintptr_t) data) & e->page_mask) {
+@@ -191,11 +192,41 @@ static bool _async_issue(struct io_engine *ioe, enum dir d, int fd,
+ return false;
+ }
+
++ /*
++ * If the bcache block offset+len goes beyond where lvm is
++ * intending to write, then reduce the len being written
++ * (which is the bcache block size) so we don't write past
++ * the limit set by lvm. If after applying the limit, the
++ * resulting size is not a multiple of the sector size (512
++ * or 4096) then extend the reduced size to be a multiple of
++ * the sector size (we don't want to write partial sectors.)
++ */
+ if (offset + nbytes > _last_byte_offset) {
+ limit_nbytes = _last_byte_offset - offset;
+- if (limit_nbytes % _last_byte_sector_size)
++
++ if (limit_nbytes % _last_byte_sector_size) {
+ extra_nbytes = _last_byte_sector_size - (limit_nbytes % _last_byte_sector_size);
+
++ /*
++ * adding extra_nbytes to the reduced nbytes (limit_nbytes)
++ * should make the final write size a multiple of the
++ * sector size. This should never result in a final size
++ * larger than the bcache block size (as long as the bcache
++ * block size is a multiple of the sector size).
++ */
++ if (limit_nbytes + extra_nbytes > nbytes) {
++ log_warn("Skip extending write at %llu len %llu limit %llu extra %llu sector_size %llu",
++ (unsigned long long)offset,
++ (unsigned long long)nbytes,
++ (unsigned long long)limit_nbytes,
++ (unsigned long long)extra_nbytes,
++ (unsigned long long)_last_byte_sector_size);
++ extra_nbytes = 0;
++ }
++ }
++
++ orig_nbytes = nbytes;
++
+ if (extra_nbytes) {
+ log_debug("Limit write at %llu len %llu to len %llu rounded to %llu",
+ (unsigned long long)offset,
+@@ -210,6 +241,22 @@ static bool _async_issue(struct io_engine *ioe, enum dir d, int fd,
+ (unsigned long long)limit_nbytes);
+ nbytes = limit_nbytes;
+ }
++
++ /*
++ * This shouldn't happen, the reduced+extended
++ * nbytes value should never be larger than the
++ * bcache block size.
++ */
++ if (nbytes > orig_nbytes) {
++ log_error("Invalid adjusted write at %llu len %llu adjusted %llu limit %llu extra %llu sector_size %llu",
++ (unsigned long long)offset,
++ (unsigned long long)orig_nbytes,
++ (unsigned long long)nbytes,
++ (unsigned long long)limit_nbytes,
++ (unsigned long long)extra_nbytes,
++ (unsigned long long)_last_byte_sector_size);
++ return false;
++ }
+ }
+ }
+
+@@ -403,6 +450,7 @@ static bool _sync_issue(struct io_engine *ioe, enum dir d, int fd,
+ uint64_t nbytes = len;
+ sector_t limit_nbytes = 0;
+ sector_t extra_nbytes = 0;
++ sector_t orig_nbytes = 0;
+
+ if (offset > _last_byte_offset) {
+ log_error("Limit write at %llu len %llu beyond last byte %llu",
+@@ -415,9 +463,30 @@ static bool _sync_issue(struct io_engine *ioe, enum dir d, int fd,
+
+ if (offset + nbytes > _last_byte_offset) {
+ limit_nbytes = _last_byte_offset - offset;
+- if (limit_nbytes % _last_byte_sector_size)
++
++ if (limit_nbytes % _last_byte_sector_size) {
+ extra_nbytes = _last_byte_sector_size - (limit_nbytes % _last_byte_sector_size);
+
++ /*
++ * adding extra_nbytes to the reduced nbytes (limit_nbytes)
++ * should make the final write size a multiple of the
++ * sector size. This should never result in a final size
++ * larger than the bcache block size (as long as the bcache
++ * block size is a multiple of the sector size).
++ */
++ if (limit_nbytes + extra_nbytes > nbytes) {
++ log_warn("Skip extending write at %llu len %llu limit %llu extra %llu sector_size %llu",
++ (unsigned long long)offset,
++ (unsigned long long)nbytes,
++ (unsigned long long)limit_nbytes,
++ (unsigned long long)extra_nbytes,
++ (unsigned long long)_last_byte_sector_size);
++ extra_nbytes = 0;
++ }
++ }
++
++ orig_nbytes = nbytes;
++
+ if (extra_nbytes) {
+ log_debug("Limit write at %llu len %llu to len %llu rounded to %llu",
+ (unsigned long long)offset,
+@@ -432,6 +501,22 @@ static bool _sync_issue(struct io_engine *ioe, enum dir d, int fd,
+ (unsigned long long)limit_nbytes);
+ nbytes = limit_nbytes;
+ }
++
++ /*
++ * This shouldn't happen, the reduced+extended
++ * nbytes value should never be larger than the
++ * bcache block size.
++ */
++ if (nbytes > orig_nbytes) {
++ log_error("Invalid adjusted write at %llu len %llu adjusted %llu limit %llu extra %llu sector_size %llu",
++ (unsigned long long)offset,
++ (unsigned long long)orig_nbytes,
++ (unsigned long long)nbytes,
++ (unsigned long long)limit_nbytes,
++ (unsigned long long)extra_nbytes,
++ (unsigned long long)_last_byte_sector_size);
++ return false;
++ }
+ }
+
+ where = offset;
+diff --git a/lib/device/dev-io.c b/lib/device/dev-io.c
+index 3fe264755..5fa0b7a9e 100644
+--- a/lib/device/dev-io.c
++++ b/lib/device/dev-io.c
+@@ -250,6 +250,58 @@ static int _dev_discard_blocks(struct device *dev, uint64_t offset_bytes, uint64
+ return 1;
+ }
+
++int dev_get_direct_block_sizes(struct device *dev, unsigned int *physical_block_size,
++ unsigned int *logical_block_size)
++{
++ int fd = dev->bcache_fd;
++ int do_close = 0;
++ unsigned int pbs = 0;
++ unsigned int lbs = 0;
++
++ if (dev->physical_block_size || dev->logical_block_size) {
++ *physical_block_size = dev->physical_block_size;
++ *logical_block_size = dev->logical_block_size;
++ return 1;
++ }
++
++ if (fd <= 0) {
++ if (!dev_open_readonly(dev))
++ return 0;
++ fd = dev_fd(dev);
++ do_close = 1;
++ }
++
++ /*
++ * BLKPBSZGET from kernel comment for blk_queue_physical_block_size:
++ * "the lowest possible sector size that the hardware can operate on
++ * without reverting to read-modify-write operations"
++ */
++ if (ioctl(fd, BLKPBSZGET, &pbs)) {
++ stack;
++ pbs = 0;
++ }
++
++ /*
++ * BLKSSZGET from kernel comment for blk_queue_logical_block_size:
++ * "the lowest possible block size that the storage device can address."
++ */
++ if (ioctl(fd, BLKSSZGET, &lbs)) {
++ stack;
++ lbs = 0;
++ }
++
++ dev->physical_block_size = pbs;
++ dev->logical_block_size = lbs;
++
++ *physical_block_size = pbs;
++ *logical_block_size = lbs;
++
++ if (do_close && !dev_close_immediate(dev))
++ stack;
++
++ return 1;
++}
++
+ /*-----------------------------------------------------------------
+ * Public functions
+ *---------------------------------------------------------------*/
+diff --git a/lib/device/device.h b/lib/device/device.h
+index 30e1e79b3..bb65f841d 100644
+--- a/lib/device/device.h
++++ b/lib/device/device.h
+@@ -67,8 +67,10 @@ struct device {
+ /* private */
+ int fd;
+ int open_count;
+- int phys_block_size;
+- int block_size;
++ int phys_block_size; /* From either BLKPBSZGET or BLKSSZGET, don't use */
++ int block_size; /* From BLKBSZGET, returns bdev->bd_block_size, likely set by fs, probably don't use */
++ int physical_block_size; /* From BLKPBSZGET: lowest possible sector size that the hardware can operate on without reverting to read-modify-write operations */
++ int logical_block_size; /* From BLKSSZGET: lowest possible block size that the storage device can address */
+ int read_ahead;
+ int bcache_fd;
+ uint32_t flags;
+@@ -132,6 +134,8 @@ void dev_size_seqno_inc(void);
+ * All io should use these routines.
+ */
+ int dev_get_block_size(struct device *dev, unsigned int *phys_block_size, unsigned int *block_size);
++int dev_get_direct_block_sizes(struct device *dev, unsigned int *physical_block_size,
++ unsigned int *logical_block_size);
+ int dev_get_size(struct device *dev, uint64_t *size);
+ int dev_get_read_ahead(struct device *dev, uint32_t *read_ahead);
+ int dev_discard_blocks(struct device *dev, uint64_t offset_bytes, uint64_t size_bytes);
+diff --git a/lib/label/label.c b/lib/label/label.c
+index fb7ad1d56..5d8a0f51b 100644
+--- a/lib/label/label.c
++++ b/lib/label/label.c
+@@ -1495,16 +1495,34 @@ bool dev_set_bytes(struct device *dev, uint64_t start, size_t len, uint8_t val)
+
+ void dev_set_last_byte(struct device *dev, uint64_t offset)
+ {
+- unsigned int phys_block_size = 0;
+- unsigned int block_size = 0;
++ unsigned int physical_block_size = 0;
++ unsigned int logical_block_size = 0;
++ unsigned int bs;
+
+- if (!dev_get_block_size(dev, &phys_block_size, &block_size)) {
++ if (!dev_get_direct_block_sizes(dev, &physical_block_size, &logical_block_size)) {
+ stack;
+- /* FIXME ASSERT or regular error testing is missing */
+- return;
++ return; /* FIXME: error path ? */
++ }
++
++ if ((physical_block_size == 512) && (logical_block_size == 512))
++ bs = 512;
++ else if ((physical_block_size == 4096) && (logical_block_size == 4096))
++ bs = 4096;
++ else if ((physical_block_size == 512) || (logical_block_size == 512)) {
++ log_debug("Set last byte mixed block sizes physical %u logical %u using 512",
++ physical_block_size, logical_block_size);
++ bs = 512;
++ } else if ((physical_block_size == 4096) || (logical_block_size == 4096)) {
++ log_debug("Set last byte mixed block sizes physical %u logical %u using 4096",
++ physical_block_size, logical_block_size);
++ bs = 4096;
++ } else {
++ log_debug("Set last byte mixed block sizes physical %u logical %u using 512",
++ physical_block_size, logical_block_size);
++ bs = 512;
+ }
+
+- bcache_set_last_byte(scan_bcache, dev->bcache_fd, offset, phys_block_size);
++ bcache_set_last_byte(scan_bcache, dev->bcache_fd, offset, bs);
+ }
+
+ void dev_unset_last_byte(struct device *dev)
+--
+2.12.3
+
diff --git a/bug-1149408_vgcreate-vgextend-restrict-PVs-with-mixed-block-size.patch b/bug-1149408_vgcreate-vgextend-restrict-PVs-with-mixed-block-size.patch
new file mode 100644
index 0000000..37d0aa7
--- /dev/null
+++ b/bug-1149408_vgcreate-vgextend-restrict-PVs-with-mixed-block-size.patch
@@ -0,0 +1,223 @@
+From 0404539edb25e4a9d3456bb3e6b402aa2767af6b Mon Sep 17 00:00:00 2001
+From: David Teigland
+Date: Thu, 1 Aug 2019 10:06:47 -0500
+Subject: [PATCH] vgcreate/vgextend: restrict PVs with mixed block sizes
+
+Avoid having PVs with different logical block sizes in the same VG.
+This prevents LVs from having mixed block sizes, which can produce
+file system errors.
+
+The new config setting devices/allow_mixed_block_sizes (default 0)
+can be changed to 1 to return to the unrestricted mode.
+---
+ lib/commands/toolcontext.h | 1 +
+ lib/config/config_settings.h | 5 ++++
+ lib/metadata/metadata-exported.h | 1 +
+ lib/metadata/metadata.c | 44 ++++++++++++++++++++++++++++++
+ tools/lvmcmdline.c | 2 ++
+ tools/toollib.c | 47 ++++++++++++++++++++++++++++++++
+ tools/vgcreate.c | 2 ++
+ 7 files changed, 102 insertions(+)
+
+diff --git a/lib/commands/toolcontext.h b/lib/commands/toolcontext.h
+index 488752c8f..655d9f297 100644
+--- a/lib/commands/toolcontext.h
++++ b/lib/commands/toolcontext.h
+@@ -153,6 +153,7 @@ struct cmd_context {
+ unsigned include_shared_vgs:1; /* report/display cmds can reveal lockd VGs */
+ unsigned include_active_foreign_vgs:1; /* cmd should process foreign VGs with active LVs */
+ unsigned vg_read_print_access_error:1; /* print access errors from vg_read */
++ unsigned allow_mixed_block_sizes:1;
+ unsigned force_access_clustered:1;
+ unsigned lockd_gl_disable:1;
+ unsigned lockd_vg_disable:1;
+diff --git a/lib/config/config_settings.h b/lib/config/config_settings.h
+index 527d5bd07..edfe4a31a 100644
+--- a/lib/config/config_settings.h
++++ b/lib/config/config_settings.h
+@@ -502,6 +502,11 @@ cfg(devices_allow_changes_with_duplicate_pvs_CFG, "allow_changes_with_duplicate_
+ "Enabling this setting allows the VG to be used as usual even with\n"
+ "uncertain devices.\n")
+
++cfg(devices_allow_mixed_block_sizes_CFG, "allow_mixed_block_sizes", devices_CFG_SECTION, 0, CFG_TYPE_BOOL, 0, vsn(2, 3, 6), NULL, 0, NULL,
++ "Allow PVs in the same VG with different logical block sizes.\n"
++ "When allowed, the user is responsible to ensure that an LV is\n"
++ "using PVs with matching block sizes when necessary.\n")
++
+ cfg_array(allocation_cling_tag_list_CFG, "cling_tag_list", allocation_CFG_SECTION, CFG_DEFAULT_UNDEFINED, CFG_TYPE_STRING, NULL, vsn(2, 2, 77), NULL, 0, NULL,
+ "Advise LVM which PVs to use when searching for new space.\n"
+ "When searching for free space to extend an LV, the 'cling' allocation\n"
+diff --git a/lib/metadata/metadata-exported.h b/lib/metadata/metadata-exported.h
+index f18587a73..e1767b78d 100644
+--- a/lib/metadata/metadata-exported.h
++++ b/lib/metadata/metadata-exported.h
+@@ -623,6 +623,7 @@ struct pvcreate_params {
+ unsigned is_remove : 1; /* is removing PVs, not creating */
+ unsigned preserve_existing : 1;
+ unsigned check_failed : 1;
++ unsigned check_consistent_block_size : 1;
+ };
+
+ struct lvresize_params {
+diff --git a/lib/metadata/metadata.c b/lib/metadata/metadata.c
+index f19df3d1d..e55adc212 100644
+--- a/lib/metadata/metadata.c
++++ b/lib/metadata/metadata.c
+@@ -751,12 +751,40 @@ int vg_extend_each_pv(struct volume_group *vg, struct pvcreate_params *pp)
+ {
+ struct pv_list *pvl;
+ unsigned int max_phys_block_size = 0;
++ unsigned int physical_block_size, logical_block_size;
++ unsigned int prev_lbs = 0;
++ int inconsistent_existing_lbs = 0;
+
+ log_debug_metadata("Adding PVs to VG %s.", vg->name);
+
+ if (vg_bad_status_bits(vg, RESIZEABLE_VG))
+ return_0;
+
++ /*
++ * Check if existing PVs have inconsistent block sizes.
++ * If so, do not enforce new devices to be consistent.
++ */
++ dm_list_iterate_items(pvl, &vg->pvs) {
++ logical_block_size = 0;
++ physical_block_size = 0;
++
++ if (!dev_get_direct_block_sizes(pvl->pv->dev, &physical_block_size, &logical_block_size))
++ continue;
++
++ if (!logical_block_size)
++ continue;
++
++ if (!prev_lbs) {
++ prev_lbs = logical_block_size;
++ continue;
++ }
++
++ if (prev_lbs != logical_block_size) {
++ inconsistent_existing_lbs = 1;
++ break;
++ }
++ }
++
+ dm_list_iterate_items(pvl, &pp->pvs) {
+ log_debug_metadata("Adding PV %s to VG %s.", pv_dev_name(pvl->pv), vg->name);
+
+@@ -767,6 +795,22 @@ int vg_extend_each_pv(struct volume_group *vg, struct pvcreate_params *pp)
+ return 0;
+ }
+
++ logical_block_size = 0;
++ physical_block_size = 0;
++
++ if (!dev_get_direct_block_sizes(pvl->pv->dev, &physical_block_size, &logical_block_size))
++ log_warn("WARNING: PV %s has unknown block size.", pv_dev_name(pvl->pv));
++
++ else if (prev_lbs && logical_block_size && (logical_block_size != prev_lbs)) {
++ if (vg->cmd->allow_mixed_block_sizes || inconsistent_existing_lbs)
++ log_debug("Devices have inconsistent block sizes (%u and %u)", prev_lbs, logical_block_size);
++ else {
++ log_error("Devices have inconsistent logical block sizes (%u and %u).",
++ prev_lbs, logical_block_size);
++ return 0;
++ }
++ }
++
+ if (!add_pv_to_vg(vg, pv_dev_name(pvl->pv), pvl->pv, 0)) {
+ log_error("PV %s cannot be added to VG %s.",
+ pv_dev_name(pvl->pv), vg->name);
+diff --git a/tools/lvmcmdline.c b/tools/lvmcmdline.c
+index 30f9d8133..7d29b6fab 100644
+--- a/tools/lvmcmdline.c
++++ b/tools/lvmcmdline.c
+@@ -2319,6 +2319,8 @@ static int _get_current_settings(struct cmd_context *cmd)
+
+ cmd->scan_lvs = find_config_tree_bool(cmd, devices_scan_lvs_CFG, NULL);
+
++ cmd->allow_mixed_block_sizes = find_config_tree_bool(cmd, devices_allow_mixed_block_sizes_CFG, NULL);
++
+ /*
+ * enable_hints is set to 1 if any commands are using hints.
+ * use_hints is set to 1 if this command doesn't use the hints.
+diff --git a/tools/toollib.c b/tools/toollib.c
+index b2313f8ff..155528c4e 100644
+--- a/tools/toollib.c
++++ b/tools/toollib.c
+@@ -5355,6 +5355,8 @@ int pvcreate_each_device(struct cmd_context *cmd,
+ struct pv_list *vgpvl;
+ struct device_list *devl;
+ const char *pv_name;
++ unsigned int physical_block_size, logical_block_size;
++ unsigned int prev_pbs = 0, prev_lbs = 0;
+ int must_use_all = (cmd->cname->flags & MUST_USE_ALL_ARGS);
+ int found;
+ unsigned i;
+@@ -5394,6 +5396,51 @@ int pvcreate_each_device(struct cmd_context *cmd,
+ dm_list_iterate_items(pd, &pp->arg_devices)
+ pd->dev = dev_cache_get(cmd, pd->name, cmd->filter);
+
++ /*
++ * Check for consistent block sizes.
++ */
++ if (pp->check_consistent_block_size) {
++ dm_list_iterate_items(pd, &pp->arg_devices) {
++ if (!pd->dev)
++ continue;
++
++ logical_block_size = 0;
++ physical_block_size = 0;
++
++ if (!dev_get_direct_block_sizes(pd->dev, &physical_block_size, &logical_block_size)) {
++ log_warn("WARNING: Unknown block size for device %s.", dev_name(pd->dev));
++ continue;
++ }
++
++ if (!logical_block_size) {
++ log_warn("WARNING: Unknown logical_block_size for device %s.", dev_name(pd->dev));
++ continue;
++ }
++
++ if (!prev_lbs) {
++ prev_lbs = logical_block_size;
++ prev_pbs = physical_block_size;
++ continue;
++ }
++
++ if (prev_lbs == logical_block_size) {
++ /* Require lbs to match, just warn about unmatching pbs. */
++ if (!cmd->allow_mixed_block_sizes && prev_pbs && physical_block_size &&
++ (prev_pbs != physical_block_size))
++ log_warn("WARNING: Devices have inconsistent physical block sizes (%u and %u).",
++ prev_pbs, physical_block_size);
++ continue;
++ }
++
++ if (!cmd->allow_mixed_block_sizes) {
++ log_error("Devices have inconsistent logical block sizes (%u and %u).",
++ prev_lbs, logical_block_size);
++ log_print("See lvm.conf allow_mixed_block_sizes.");
++ return 0;
++ }
++ }
++ }
++
+ /*
+ * Use process_each_pv to search all existing PVs and devices.
+ *
+diff --git a/tools/vgcreate.c b/tools/vgcreate.c
+index d594ec110..09b6a6c95 100644
+--- a/tools/vgcreate.c
++++ b/tools/vgcreate.c
+@@ -47,6 +47,8 @@ int vgcreate(struct cmd_context *cmd, int argc, char **argv)
+ /* Don't create a new PV on top of an existing PV like pvcreate does. */
+ pp.preserve_existing = 1;
+
++ pp.check_consistent_block_size = 1;
++
+ if (!vgcreate_params_set_defaults(cmd, &vp_def, NULL))
+ return EINVALID_CMD_LINE;
+ vp_def.vg_name = vg_name;
+--
+2.21.0
+
diff --git a/bug-950089_test-fix-lvm2-testsuite-build-error.patch b/bug-950089_test-fix-lvm2-testsuite-build-error.patch
deleted file mode 100644
index 1d74e66..0000000
--- a/bug-950089_test-fix-lvm2-testsuite-build-error.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-commit 0402acbbb9f8f6066a3f7899e8cc3ae72b84ee20
-Author: Zhilong Liu
-Date: Wed Dec 7 02:43:10 2016 -0500
-
-add a new test package named lvm2-testsuite(bnc#950089)
- + lvm2-testsuite.patch
-Currently this new package is not enabled by default.
-Please set enable_testsuite to 1 to turn it on in the
- spec file.
-
-Eric:
-
-This patch is to solve the following obs building error:
-
-"""
-E: arch-dependent-file-in-usr-share (Badness: 590) /usr/share/lvm2-testsuite/api/lvtest.t
-...
-"""
-
-So, move the *.t binary into /usr/lib/lvm2-testsuite/.
-
-Signed-off-by: Zhilong Liu
-
-diff --git a/test/Makefile.in b/test/Makefile.in
-index f152868..f0845d7 100644
---- a/test/Makefile.in
-+++ b/test/Makefile.in
-@@ -224,7 +224,7 @@ install: .tests-stamp lib/paths-installed
- $(INSTALL_DATA) api/*.sh $(DATADIR)/api
- $(INSTALL_DATA) unit/*.sh $(DATADIR)/unit
- $(INSTALL_DATA) lib/mke2fs.conf $(DATADIR)/lib
-- $(INSTALL_PROGRAM) api/*.{t,py} $(DATADIR)/api
-+ $(INSTALL_PROGRAM) api/*.py $(DATADIR)/api/
- $(INSTALL_PROGRAM) unit/unit-test $(DATADIR)/unit
- $(INSTALL_PROGRAM) dbus/*.py $(DATADIR)/dbus/
- $(INSTALL_DATA) lib/paths-installed $(DATADIR)/lib/paths
-@@ -244,6 +244,7 @@ install: .tests-stamp lib/paths-installed
- @cd $(EXECDIR) && for i in $(LIB_LINK_NOT); do \
- echo "$(LN_S) -f not $$i"; \
- $(LN_S) -f not $$i; done
-+ $(INSTALL_PROGRAM) api/*.t $(EXECDIR)
- $(INSTALL_PROGRAM) -D lib/runner $(bindir)/lvm2-testsuite
-
- lib/should: lib/not
diff --git a/bug-978055_clvmd-try-to-refresh-device-cache-on-the-first-failu.patch b/bug-978055_clvmd-try-to-refresh-device-cache-on-the-first-failu.patch
deleted file mode 100644
index 7898561..0000000
--- a/bug-978055_clvmd-try-to-refresh-device-cache-on-the-first-failu.patch
+++ /dev/null
@@ -1,92 +0,0 @@
-From 4f0681b1a296d88ac1dbdb26e46afed3285ad1bf Mon Sep 17 00:00:00 2001
-From: Eric Ren
-Date: Tue, 23 May 2017 15:09:46 +0800
-Subject: [PATCH 09/10] clvmd: try to refresh device cache on the first failure
-
-1. The original problem
-$ sudo lvchange -ay testvg/testlv
-Error locking on node 1302cf30: Volume group for uuid not found:
-qBKu65bSxfRq7gUf91NZuH4epLza4ifDieQJFd2to2WruVi5Brn7DxxsEgi5Zodw
-
-2. This problem can be easily replicated
-a. Make clvmd running in cluster environment;
-b. Assume you have created LV "testlv" in local VG 'testvg' on
- a MD device 'md0';
-c. Make sure 'md0' is stopped, and not in the device cache by
- executing 'clvmd -R' or 'pvscan';
-d. Assemble 'md0' by issuing 'mdadm --assemble --scan --name md0';
-e. To activate 'testlv', you will see the 'Error locking' problem.
-
-3. Analysis
-a. After step 2.d, 'pvscan --cache ...' is triggered by udev rules,
- notifying 'md0' is ready. But, pvscan exits very early because
- lvmetad is not being used, thus doesn't go through the lock manager.
- Therefore, clvmd isn't aware of this udev events. The device cache
- hasn't 'md0'.
-
-b. In step 2.e, the client, 'lvchange -ay testvg/testlv' cmd, can find
- 'testlv' correctly in the client metadata, because the device list
- is gathered by call chain:
- lvm_run_command()->init_filters()->persistent_filter_load()->dev_cache_scan().
- Then, it asks clvmd for "Locking VG V_testvg CR", which just drops
- the metadata in clmvd by call chain: do_lock_vg()->lvmcache_drop_metadata(),
- but the device cache is *not* refreshed.
-
-c. Finally, clvmd fails to find the lvid in activation path:
- do_lock_lv()->do_activate_lv()->lv_info_by_lvid()
-
-Apparently, the metadata DB is not complete without a complete device
-cache in clvmd. However, upstream say the pvscan tool intends to be
-only used with lvmetad, suggesting me not hacking there. So, we'd
-better fix this issue within clvmd code.
-
-Sometimes, the device cache in clvmd could be out of date.
-"clvmd -R" is invented for this issue. However, to run
-"clvmd -R" manually is not convenient, because it's hard
-to predict when device change would happen.
-
-This patch gives another try after refreshing the device
-cache. In normal, it doesn't cause any side-effect. In
-case of the issue above, it's worth a retry.
-
-Signed-off-by: Eric Ren
----
- daemons/clvmd/lvm-functions.c | 11 ++++++++++-
- 1 file changed, 10 insertions(+), 1 deletion(-)
-
-diff --git a/daemons/clvmd/lvm-functions.c b/daemons/clvmd/lvm-functions.c
-index 2446fd1..dcd3f9b 100644
---- a/daemons/clvmd/lvm-functions.c
-+++ b/daemons/clvmd/lvm-functions.c
-@@ -509,11 +509,14 @@ const char *do_lock_query(char *resource)
- int do_lock_lv(unsigned char command, unsigned char lock_flags, char *resource)
- {
- int status = 0;
-+ int do_refresh = 0;
-
- DEBUGLOG("do_lock_lv: resource '%s', cmd = %s, flags = %s, critical_section = %d\n",
- resource, decode_locking_cmd(command), decode_flags(lock_flags), critical_section());
-
-- if (!cmd->initialized.config || config_files_changed(cmd)) {
-+again:
-+ if (!cmd->initialized.config || config_files_changed(cmd)
-+ || do_refresh) {
- /* Reinitialise various settings inc. logging, filters */
- if (do_refresh_cache()) {
- log_error("Updated config file invalid. Aborting.");
-@@ -579,6 +582,12 @@ int do_lock_lv(unsigned char command, unsigned char lock_flags, char *resource)
- init_test(0);
- pthread_mutex_unlock(&lvm_lock);
-
-+ /* Try again in case device cache is stale */
-+ if (status == EIO && !do_refresh) {
-+ do_refresh = 1;
-+ goto again;
-+ }
-+
- DEBUGLOG("Command return is %d, critical_section is %d\n", status, critical_section());
- return status;
- }
---
-2.10.2
-
diff --git a/bug-998893_make_pvscan_service_after_multipathd.patch b/bug-998893_make_pvscan_service_after_multipathd.patch
deleted file mode 100644
index 81ab6ea..0000000
--- a/bug-998893_make_pvscan_service_after_multipathd.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 0da043466ace27eb483114c87ce81feaf00ed682 Mon Sep 17 00:00:00 2001
-From: Eric Ren
-Date: Thu, 6 Apr 2017 11:22:30 +0800
-Subject: [PATCH] systemd service: make pvscan service after multipathd
-
-bsc#998893
-Signed-off-by: Eric Ren
----
- scripts/lvm2_pvscan_systemd_red_hat@.service.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/scripts/lvm2_pvscan_systemd_red_hat@.service.in b/scripts/lvm2_pvscan_systemd_red_hat@.service.in
-index 03651d5..1d6342f 100644
---- a/scripts/lvm2_pvscan_systemd_red_hat@.service.in
-+++ b/scripts/lvm2_pvscan_systemd_red_hat@.service.in
-@@ -4,7 +4,7 @@ Documentation=man:pvscan(8)
- StartLimitInterval=0
- BindsTo=dev-block-%i.device
- Requires=lvm2-lvmetad.socket
--After=lvm2-lvmetad.socket lvm2-lvmetad.service
-+After=lvm2-lvmetad.socket lvm2-lvmetad.service multipathd.service
- Before=shutdown.target
- Conflicts=shutdown.target
-
---
-2.10.2
-
diff --git a/device-mapper.changes b/device-mapper.changes
deleted file mode 100644
index 32b56e9..0000000
--- a/device-mapper.changes
+++ /dev/null
@@ -1,2204 +0,0 @@
--------------------------------------------------------------------
-Tue Jul 9 10:00:05 UTC 2019 - ghe@suse.com
-
-- Fix unknown feature in status message (bsc#1135984)
- + bug-1135984_cache-support-no_discard_passdown.patch
-
--------------------------------------------------------------------
-Thu Jun 27 02:53:03 UTC 2019 - heming.zhao@suse.com
-
-- Fix using device aliases with lvmetad (bsc#1137296)
- + bug-1137296_pvremove-vgextend-fix-using-device-aliases-with-lvmetad.patch
-
--------------------------------------------------------------------
-Tue Apr 30 10:20:05 UTC 2019 - ghe@suse.com
-
-- Fix devices drop open error message (bsc#1122666)
- + bug-1122666_devices-drop-open-error-message.patch
-
--------------------------------------------------------------------
-Tue Mar 19 12:02:02 UTC 2019 - Martin Liška
-
-- Use %make_build in order to provide verbose output.
-
--------------------------------------------------------------------
-Fri Feb 1 08:20:15 UTC 2019 - ghe@suse.com
-
-- Disable the LVM lock daemon using sanlock, in order to avoid the
- dependence on sanlock related packages (bsc#1121382)
-
--------------------------------------------------------------------
-Mon Jan 14 14:23:52 CET 2019 - kukuk@suse.de
-
-- Use %license instead of %doc [bsc#1082318]
-
--------------------------------------------------------------------
-Mon Nov 5 08:10:05 UTC 2018 - ghe@suse.com
-
-- Prevent writing beyond metadata area (bsc#1114113)
- + bug-1114113_metadata-prevent-writing-beyond-metadata-area.patch
-
--------------------------------------------------------------------
-Wed Aug 29 10:20:30 UTC 2018 - ghe@suse.com
-
-- Fix lvm2 activation issue when used on top of multipath
- bsc#998893
- + bug-998893_make_pvscan_service_after_multipathd.patch
-
--------------------------------------------------------------------
-Mon Jul 23 11:45:20 UTC 2018 - ghe@suse.com
-
-- Update to LVM2.2.02.180
- Never send any discard ioctl with test mode.
- Fix thin-pool alloc which needs same PV for data and metadata.
- Extend list of non-memlocked areas with newly linked libs.
- Enhance vgcfgrestore to check for active LVs in restored VG.
- lvconvert: provide possible layouts between linear and striped/raid
- Fix unmonitoring of merging snapshots.
- Add missing -l description in fsadm man page.
- Cache can uses metadata format 2 with cleaner policy.
- Avoid showing internal error in lvs output or pvmoved LVs.
- Fix check if resized PV can also fit metadata area.
- Reopen devices RDWR only before writing to avoid udev issues.
- Change pvresize output confusing when no resize took place.
- Fix lvmetad hanging on shutdown.
- Fix mem leak in clvmd and more coverity issues.
- Fix that pvmove does not work (bsc#1080299)
-- Drop patches that have been merged upstream
- - fate-323203_lvmlockd-add-lockopt-values-for-skipping-selected-lo.patch
- - lvm2-69-dm-lvm-metad.rules-explicit-pvscan-rule.patch
- - lvm2-69-dm-lvm-metad.rules-set-systemd-vars-on-chang.patch
- - bug-1095960_dev_io-no-discard-in-testmode.patch
-- Refresh patches
- + bsc1080299-detect-clvm-properly.patch
- + bug-950089_test-fix-lvm2-testsuite-build-error.patch
-- Update spec files
- Fix BuildRequires package name for modprobe (bsc#1102668)
- Fix cmirrord LV creation/activation failure (bsc#1091863)
-- Fix building error in OBS due to the script interpreter
- + tests-specify-python3-as-the-script-interpreter.patch
-
--------------------------------------------------------------------
-Wed Jul 18 11:33:30 UTC 2018 - ghe@suse.com
-
-- Fix issuing discard in test mode (bsc#1095960)
- + bug-1095960_dev_io-no-discard-in-testmode.patch
-
--------------------------------------------------------------------
-Tue May 29 10:45:30 UTC 2018 - ghe@suse.com
-
-- Fix the wrong filter for the cdrom device in /etc/lvm/lvm.conf
- (bsc#1081530)
-
--------------------------------------------------------------------
-Thu Apr 19 10:59:59 UTC 2018 - mwilck@suse.com
-
-- Fix handling of udev CHANGE events with systemd (bsc#1067312)
- + lvm2-69-dm-lvm-metad.rules-explicit-pvscan-rule.patch
- + lvm2-69-dm-lvm-metad.rules-set-systemd-vars-on-chang.patch
-
--------------------------------------------------------------------
-Mon Feb 12 09:01:29 UTC 2018 - tchvatal@suse.com
-
-- Fix detection of clvm that happens on compile time based on
- CLVM_PIDFILE, as we determine these features on runtime
- bsc#1080299:
- + bsc1080299-detect-clvm-properly.patch
-
--------------------------------------------------------------------
-Tue Jan 16 11:53:36 UTC 2018 - zren@suse.com
-
-- clvmd: try to refresh device cache on the first failure
- (bsc#978055, bsc#1076042)
- + bug-978055_clvmd-try-to-refresh-device-cache-on-the-first-failu.patch
-
--------------------------------------------------------------------
-Wed Jan 10 10:41:45 UTC 2018 - zren@suse.com
-
-- lvmlockd: add lockopt values for skipping selected locks (fate#323203)
- + fate-323203_lvmlockd-add-lockopt-values-for-skipping-selected-lo.patch
-
--------------------------------------------------------------------
-Tue Dec 19 07:35:11 UTC 2017 - zren@suse.com
-
-- device-mapper.spec: fix wrong replacement of DM_VERSION (bsc#1072524)
-- Fixes failure of some testcases caused by nc behavior change (bsc#1072624)
- + bug-1072624_test-lvmetad_dump-always-timed-out-when-using-nc.patch
-- Refreshed fate-31841_fsadm-add-support-for-btrfs.patch
-- Update to LVM2.2.02.177
- When writing text metadata content, use complete 4096 byte blocks.
- Change text format metadata alignment from 512 to 4096 bytes.
- When writing metadata, consistently skip mdas marked as failed.
- Refactor and adjust text format metadata alignment calculation.
- Ensure _node_send_message always uses clean status of thin pool.
- Fix lvmlockd to use pool lock when accessing _tmeta volume.
- Report expected sanlock_convert errors only when retries fail.
- Avoid blocking in sanlock_convert on SH to EX lock conversion.
- Deactivate missing raid LV legs (_rimage_X-missing_Y_Z) on decativation.
- Categorise I/O with reason annotations in debug messages.
- Allow extending of raid LVs created with --nosync after a failed repair.
- Command will lock memory only when suspending volumes.
- Merge segments when pvmove is finished.
- Activation code for pvmove automatically discovers holding LVs for resume.
- Make a pvmove LV locking holder.
- Do not change critical section counter on resume path without real resume.
- Enhance activation code to automatically suspend pvmove participants.
- Prevent conversion of thin volumes to snapshot origin when lvmlockd is used.
- Add support for pvmove of cache and snapshot origins.
- Avoid using precommitted metadata for suspending pvmove tree.
- Deactivate activated LVs on error path when pvmove activation fails.
- Add "io" to log/debug_classes for logging low-level I/O.
- Avoid importing persistent filter in vgscan/pvscan/vgrename.
- Fix memleak of string buffer when vgcfgbackup runs in secure mode.
- Do not print error when clvmd cannot find running clvmd.
- Prevent start of new merge of snapshot if origin is already being merged.
- Fix offered type for raid6_n_6 to raid5 conversion (raid5_n).
- Deactivate sub LVs when removing unused cache-pool.
- Do not take backup with suspended devices.
-
--------------------------------------------------------------------
-Tue Nov 21 09:29:02 UTC 2017 - zren@suse.com
-
-- Update to LVM2.2.02.176:
- Keep Install section only in lvm2-{lvmetad,lvmpolld}.socket systemd unit.
- Fix segfault in lvm_pv_remove in liblvm. (2.02.173)
- Do not allow storing VG metadata with LV without any segment.
- Fix printed message when thin snapshot was already merged.
- Remove created spare LV when creation of thin-pool failed.
- Avoid reading ignored metadata when mda gets used again.
- Fix detection of moved PVs in vgsplit. (2.02.175)
- Ignore --stripes/--stripesize on RAID takeover
- Improve used paths for generated systemd units and init shells.
- Disallow creation of snapshot of mirror/raid subLV (was never supported).
- Fix regression in more advanced vgname extraction in lvconvert (2.02.169).
- Allow lvcreate to be used for caching of _tdata LV.
- Avoid internal error when resizing cache type _tdata LV (not yet supported).
- Show original converted names when lvconverting LV to pool volume.
- Move lib code used only by liblvm into metadata-liblvm.c.
- Distinguish between device not found and excluded by filter.
- Monitor external origin LVs.
- Remove the replicator code, including configure --with-replicators.
- Allow lvcreate --type mirror to work with 100%FREE.
- Improve selection of resource name for complex volume activation lock.
- Avoid cutting first character of resource name for activation lock.
- Support for encrypted devices in fsadm.
- Improve thin pool overprovisioning and repair warning messages.
- Fix incorrect adjustment of region size on striped RaidLVs.
-- Drop: bug-960044_lvm2-lvmetad.service-add-Also-lvm2-lvmetad.socket.patch
-- Refresh: fate-31841_fsadm-add-support-for-btrfs.patch
-
--------------------------------------------------------------------
-Thu Nov 2 12:48:23 UTC 2017 - zren@suse.com
-
-- Re-add a strict requires on sanlock, fate#323203
-
--------------------------------------------------------------------
-Mon Oct 23 07:50:33 UTC 2017 - zren@suse.com
-
-- Update to LVM2.2.02.175
-- Use week dependency for lvm2-lockd on libdlm and sanlock
-- Rename/refresh patches:
- - display-dm-name-for-lv-name.diff to fate-309425_display-dm-name-for-lv-name.patch
- - fsadm-add-support-for-btrfs.patch to fate-31841_fsadm-add-support-for-btrfs.patch
- - dmeventd-fix-dso-name-wrong-compare.patch to bug-935623_dmeventd-fix-dso-name-wrong-compare.patch
- - lvm2-lvmetad.service-add-Also-lvm2-lvmetad.socket.patch to bug-960044_lvm2-lvmetad.service-add-Also-lvm2-lvmetad.socket.patch
- - simplify-special-case-for-md-in-69-dm-lvm-metadata.patch to bug-1012973_simplify-special-case-for-md-in-69-dm-lvm-metadata.patch
- - lvm2-testsuite.patch to bug-950089_test-fix-lvm2-testsuite-build-error.patch
-
--------------------------------------------------------------------
-Thu Sep 14 09:51:18 UTC 2017 - zren@suse.com
-
-- Drop resource agents for clvmd and cmirror (bsc#1058680)
- - clvmd.ocf
- - cmirrord.ocf
-- Drop all patches for cmirror (bsc#1058661)
- - cluster_support_mirrord_log.diff
- - cmirrord_improvment_performance.patch
- - lvconvert-cluster-mirrored-disk-failed.patch
- - improve-mirror-legs-on-different-tag-pvs.patch
- - make-mirror-legs-on-different-tag-pvs.patch
- - use-mirrortype-asdefault-whenclvmdrunning.patch
-
--------------------------------------------------------------------
-Fri Aug 18 09:53:39 UTC 2017 - mwilck@suse.com
-
-- Dropped udev rule patches (bsc#1054363)
- * dropped udev_rules-update.diff
- * dropped device-mapper-dmsetup-export.patch
- * dropped udev-Check-for-DM_NR_VALID_PATHS.patch
- * dropped Import-ID_FS_XXX-variables-bnc909358.patch
- * dropped 69-dm-lvm-metad.rules-Do-not-process-rules-for-multi.patch
-
--------------------------------------------------------------------
-Tue Aug 1 05:59:29 UTC 2017 - zren@suse.com
-
-- Dropped several not-upstreamed patches, some of them neither have
- history reference nor patch header, some were temporary workaround
- fix.
- - device-mapper-gcc-warnings.patch
- - device-mapper-type_punning.diff
- - fix-closedown-before-thread-finish.patch
- - libdm-iface-not-output-error-message-inside-retry-loop.patch
- - pvcreate-enhance-the-error-message.patch
- - pvmove_support_clustered_vg.diff
- - version-plugins-in-libdir.patch
-
--------------------------------------------------------------------
-Tue Jul 25 13:48:00 UTC 2017 - zren@suse.com
-
-- Update to LVM2.2.02.173
-- Sync our lvm.conf with V2.02.173
-
--------------------------------------------------------------------
-Thu Jul 13 13:09:35 UTC 2017 - tchvatal@suse.com
-
-- Require device-mapper-devel rather than recommend. It is really
- needed (the .h files are required by the lvm2app and lvm2cmd)
-
--------------------------------------------------------------------
-Thu Jul 6 10:18:09 UTC 2017 - zren@suse.com
-
-- Don't create symlink for invisible device like thin-pool (bsc#1046591)
- * drop 10-dm.rules-Reset-state-variable-for-spurious-events.patch
-
--------------------------------------------------------------------
-Tue Jul 4 10:24:40 UTC 2017 - zren@suse.com
-
-- Update to LVM2.2.02.172
-- Cleanup spec file, and refresh patches
- * removed device-mapper-link.patch
- * removed bug-1033691_tests-missed-to-export-lvm-binary-for-fsadm.patch
- * removed Makefile-skip-compliling-daemons-lvmlockd-directory.patch
- * added bug-1037309_Makefile-skip-compliling-daemons-lvmlockd-directory.patch
-
--------------------------------------------------------------------
-Thu Jun 29 16:38:05 UTC 2017 - dimstar@opensuse.org
-
-- Fix zypper update issue with device-mapper package, see bsc#1045396
-
--------------------------------------------------------------------
-Sat Jun 17 16:50:53 UTC 2017 - zren@suse.com
-
-- Backport fix for lvresize-full.sh failed, see bsc#1033691
- + bug-1033691_tests-missed-to-export-lvm-binary-for-fsadm.patch
-
--------------------------------------------------------------------
-Sat Jun 17 14:56:58 UTC 2017 - zren@suse.com
-
-- Fix test failures about read ahead issue, see bsc#1043040
- + bug-1043040_test-fix-read-ahead-issues-in-test-scripts.patch
-- Reorder the patches to put them into the right groups
-
--------------------------------------------------------------------
-Fri Jun 9 19:27:45 UTC 2017 - kukuk@suse.com
-
-- Don't package dynamic directories in /run
-
--------------------------------------------------------------------
-Wed May 17 08:21:27 UTC 2017 - zren@suse.com
-
-- Add lvmlockd-related configuration items in lvm.conf, fate#323203
-
--------------------------------------------------------------------
-Tue May 16 07:45:25 UTC 2017 - zren@suse.com
-
-- Fix compiling issue of lvmlockd, bsc#1037309
- + Makefile-skip-compliling-daemons-lvmlockd-directory.patch
-
--------------------------------------------------------------------
-Fri May 5 11:33:28 UTC 2017 - tchvatal@suse.com
-
-- Remove comments breaking scriptlets:
- * warning: %postun(libdevmapper1_03-1.02.137-5.1.x86_64) scriptlet failed
-
--------------------------------------------------------------------
-Wed May 3 09:01:42 UTC 2017 - zren@suse.com
-
-- This patch has been dropped since SLE12 (bsc#952300)
- * removed sys_mount_instead_linux_fs.diff
-- Drop obsolete patches:
- * removed improve_probing.diff (bsc#49657)
- * removed no-inc-audit.diff
- * removed suppress_format1_size_warning.diff
-- Add more bug/fate references, and reorder the patches accordingly
-
--------------------------------------------------------------------
-Tue Apr 25 12:00:23 UTC 2017 - zren@suse.com
-
-- Add check_pv_device_sizes option to check PV and disk sizes
- bsc#999878
-
--------------------------------------------------------------------
-Mon Apr 24 17:08:34 UTC 2017 - arvidjaar@gmail.com
-
-- BuildRequire modutils so build script detects modprobe and module
- autoloading works again (boo#983221)
-
--------------------------------------------------------------------
-Tue Apr 18 11:07:01 UTC 2017 - tchvatal@suse.com
-
-- Update to 2.02.170:
- * Few smal fixes around; obsoleted 169 release that was removed
- from mirrors
-- Refresh patch:
- * display-dm-name-for-lv-name.diff
-
--------------------------------------------------------------------
-Wed Apr 12 01:33:15 UTC 2017 - zren@suse.com
-
-- Update device mapper version to 1.02.138, see WHATS_NEW_DM for
- detailed changelogs
- * Drop obsolete lvmchange files accordingly
-- Refresh libdm-iface-not-output-error-message-inside-retry-loop.patch
-- Refresh make-mirror-legs-on-different-tag-pvs.patch
-- device-mapper-dmsetup-export.patch
-
--------------------------------------------------------------------
-Mon Apr 10 23:08:45 UTC 2017 - jnelson-suse@jamponi.net
-
-- Version update to 2.02.169 release, see WHATS_NEW and WHATS_NEW_DM
- files for detailed changelogs
-
--------------------------------------------------------------------
-Mon Apr 10 10:41:02 UTC 2017 - tchvatal@suse.com
-
-- Split configure options to have one per line
-- Pass over with spec-cleaner
-- Enable internal cache
-- Enable lvmpolld
-
--------------------------------------------------------------------
-Mon Apr 10 07:41:10 UTC 2017 - zren@suse.com
-
-- Add 'lvm2-lockd' subpackage, fate#323203 to lvm2-clvm to not pull
- corosync and other deps to the core lvm2 package
-
--------------------------------------------------------------------
-Fri Feb 24 10:57:16 UTC 2017 - zren@suse.com
-
-- Improve the layout and readability of spec files
- * Place subpackages' sections at the bottom of spec file, making
- the layout more reasonable: 1. main package's spec sections are
- contiguous without a break; 2. subpackage's spec spections can
- also be placed together.
- * Get rid of wild-card usage in %files section; spec file is a
- perfect place for packager to know what files are exactly delivered
- with each RPMs; staring at wild-card doesn't give much information.
- * Put bsc#xxx at previous line of each SUSE patch at my best, some
- are still missing.
-
--------------------------------------------------------------------
-Thu Feb 23 06:27:55 UTC 2017 - zren@suse.com
-
-- Enable lvmetad in sync with SLE
-
--------------------------------------------------------------------
-Wed Feb 22 11:25:01 UTC 2017 - zren@suse.com
-
-- Add systemid feature
- * update lvm.conf accordingly
- * replace whitespaces with tab in lvm.conf
-
--------------------------------------------------------------------
-Wed Feb 22 10:43:38 UTC 2017 - zren@suse.com
-
-- Fix several issues about clvmd/cmorriord RAs (bsc#1023283,
- bsc#1025560)
- * deal with time values passed down with time units
- * make correct "return code"
- * fix format issue that tab messes up with spaces
-
--------------------------------------------------------------------
-Wed Feb 22 06:39:27 UTC 2017 - zren@suse.com
-
-- udev: simplify special-case for md in 69-dm-lvm-metadata.rules
- * fix regression of bsc#1012973
- * drop remove-special-case-for-md-in-69-dm-lvm-metadata.rul.patch
- * add simplify-special-case-for-md-in-69-dm-lvm-metadata.patch
-
--------------------------------------------------------------------
-Fri Jan 20 09:46:27 UTC 2017 - tchvatal@suse.com
-
-- Remove special case for md (bsc#1012973)
- * remove-special-case-for-md-in-69-dm-lvm-metadata.rul.patch
-
--------------------------------------------------------------------
-Tue Jan 10 09:25:17 UTC 2017 - zlliu@suse.com
-
-- add a new test package named lvm2-testsuite bnc#950089
- * lvm2-testsuite.patch
-
--------------------------------------------------------------------
-Wed Dec 28 11:08:23 UTC 2016 - tchvatal@suse.com
-
-- Version update to 2.02.168 release, see WHATS_NEW and WHATS_NEW_DM
- files for detailed changelogs
- * Refresh patch cluster_support_mirrord_log.diff
-
--------------------------------------------------------------------
-Wed Dec 28 10:58:29 UTC 2016 - zlliu@suse.com
-
-- fix bsc#1015357 about blkid_wiping printed warning.
- * Add dependency on pkgconfig(blkid)
-
--------------------------------------------------------------------
-Fri Sep 9 09:24:19 UTC 2016 - tchvatal@suse.com
-
-- This is sync commit from Leap/SLE12 only
-- Add patch pvcreate-enhance-the-error-message.patch bsc#960744
-- Modify GPL-2.0 to GPL-2.0+ and LGPL-2.1 to LGPL-2.1+ to avoid
- license conflict with thin-provisioning-tools which is using GPL-3.0
-- Also contains fix for bsc#969310
-- Fix clvmd.ocf and cmirrord to remove "-d" option for cmirrod
- (bsc#971334)
-- Fix clvmd.ocf to add lvmconf --enable-cluster before start daemon
- when locking_type is not 3 or use_lvmetad is 1 in setting
- (bsc#970439)
-- Modified spec to enable blkid-wiping (fate#319908)
-- Fix clvmd binary not found in case that users still use RA from
- ocf:lvm2:clvm (bsc#980200)
- Add sbindir=$HA_SBIN_DIR for clvmd.ocf and cmirrord.ocf
-- The bsc#979635 wnd bsc#991181 as fixed in past thanks to proper /usr
- migration code
-- Modified raid10_segtype_default from "mirror" to "raid10"(bsc#982329)
-- Remove lvm2-clvmd/cmirrord.service and related activation services
- from %service_add _pre/post/preun/postun because we start clvmd
- /clmirrord and activate via pacemaker and RA. (bsc#980296)
-- Lvchange improve refresh by trying to deactivate snapshot thinLV
- in case it's preventing merge process change integrated upstream.
- (bsc#984321)
-- Fixed in past bsc#992843
-- Fixed by upstream bsc#984321
-- Fixed by upstream bsc#970943
-- 69-dm-lvm-metad.rules: Do not process rules for multipath
- devices (bsc#bsc#990538, bsc#986734)
- Add: 69-dm-lvm-metad.rules-Do-not-process-rules-for-multi.patch
-- Rewrite patches to include patch header:
- * 10-dm.rules-Reset-state-variable-for-spurious-events.patch
- * device-mapper-link
- * device-mapper-type_punning.diff
- * udev_rules-update.diff
-- Sync also lvm.conf
-
--------------------------------------------------------------------
-Fri Sep 2 08:23:06 UTC 2016 - tchvatal@suse.com
-
-- Update to 2.02.164 release, WHATS_NEW for changelog
- * Mostly because the old tarball was no longer available
- * Refresh fuzz on patch:
- + make-mirror-legs-on-different-tag-pvs.patch
- + cluster_support_mirrord_log.diff
-- Update patch to use correct api:
- + make-mirror-legs-on-different-tag-pvs.patch
-
--------------------------------------------------------------------
-Fri Jul 8 13:43:41 UTC 2016 - tchvatal@suse.com
-
-- Update to 2.02.160 release, read WHATS_NEW for detailed log.
- * Most notable is lvconvert refactor/enhancements
- * Refresh patch:
- + cluster_support_mirrord_log.diff
-
--------------------------------------------------------------------
-Tue Jun 7 12:08:24 UTC 2016 - tchvatal@suse.com
-
-- Add thin-provisioning-tools to deps to fix configure warnings
-
--------------------------------------------------------------------
-Tue Jun 7 11:45:56 UTC 2016 - tchvatal@suse.com
-
-- Do not run initrd regenerating twice in post
-
--------------------------------------------------------------------
-Tue Jun 7 11:40:41 UTC 2016 - tchvatal@suse.com
-
-- Update to 2.02.155 release, read WHATS_NEW for detailed log.
- * Mostly few bugfixes around caching
-- Refresh patch pvmove_support_clustered_vg.diff
-
--------------------------------------------------------------------
-Thu May 19 12:07:09 UTC 2016 - tchvatal@suse.com
-
-- Add compat symlinks for binaries to /sbin/ to avoid errors on
- hardcoded systems, obsolete them with leap 43
-
--------------------------------------------------------------------
-Thu May 12 08:12:54 UTC 2016 - tchvatal@suse.com
-
-- Add conflicts on unsplit packages to allow smooth upgrade path
- Also do the conflict properly in baselibs.conf
-
--------------------------------------------------------------------
-Wed May 11 07:54:19 UTC 2016 - tchvatal@suse.com
-
-- Add dependencies to the devel pacakge in baselibs.conf
-
--------------------------------------------------------------------
-Wed May 4 10:36:40 UTC 2016 - tchvatal@suse.com
-
-- Update patch use-mirrortype-asdefault-whenclvmdrunning.patch
- to match up the patches/pvmove_support_clustered_vg.diff and not
- use the define declared only when building clvm codebase;
- it is still broken if someone changes the PID location, but at least
- it now does not depend on clvm code
-- Regenerate_initrd in post of the lvm2 main pkg
-- Update baselibs to point to split-out devicemapper libraries
-
--------------------------------------------------------------------
-Wed May 4 09:27:30 UTC 2016 - tchvatal@suse.com
-
-- Keep in sync the common configuration options that are shared among
- all the variants dm/lvm2/clvm
-
--------------------------------------------------------------------
-Tue May 3 14:03:30 UTC 2016 - tchvatal@suse.com
-
-- Provide symlinks to 1.02 versions of dm and dm-event libs
- * this should sort out binary packages without the need of double
- rebuilding
-
--------------------------------------------------------------------
-Tue May 3 13:23:52 UTC 2016 - tchvatal@suse.com
-
-- Update to 2.02.152 release, read WHATS_NEW for detailed log.
-- Refresh patches:
- * 10-dm.rules-Reset-state-variable-for-spurious-events.patch
- * device-mapper-gcc-warnings.patch
- * device-mapper-link.patch
- * udev-Check-for-DM_NR_VALID_PATHS.patch
-- Slightly tweak btrfs patch as the code changed for the detection:
- * fsadm-add-support-for-btrfs.patch
-
--------------------------------------------------------------------
-Tue May 3 12:55:34 UTC 2016 - tchvatal@suse.com
-
-- Build and install properly cluster files
-- Remove csm-converter.tar.gz as the evms was last present on sle10
- and thus migration is bit out of scope today
-
--------------------------------------------------------------------
-Tue May 3 09:23:48 UTC 2016 - tchvatal@suse.com
-
-- Add pre_checkin.sh to allow syncing of patches between packages:
- workflow = add everything to lvm2.spec and run pre_checkin.sh
-
--------------------------------------------------------------------
-Mon May 2 17:41:55 UTC 2016 - tchvatal@suse.com
-
-- Refresh patch use-mirrortype-asdefault-whenclvmdrunning.patch to
- work without clvm code enabled
-
--------------------------------------------------------------------
-Mon May 2 17:29:09 UTC 2016 - tchvatal@suse.com
-
-- Regenerate lvm2 tmpfiles after install so they won't populate just
- after the reboot
-- Split out lvm2 libraries to separate subpkgs per standards
-- Rename versioning of plugins patch:
- * version-plugins-in-libdir -> version-plugins-in-libdir.patch
-
--------------------------------------------------------------------
-Mon May 2 16:51:09 UTC 2016 - tchvatal@suse.com
-
-- Remove evms provides/obsoletes, last seen on sle10
-- Mark configs as such
-- Ghost the during-run created dirs
-- Install rcbla compat service symlinks
-
--------------------------------------------------------------------
-Mon May 2 15:13:35 UTC 2016 - tchvatal@suse.com
-
-- Sync with device-mapper.spec, build only lvm and wipe devicemapper
- binaries
-- Install in /usr there is no technical reason to keep this out
- of /usr
-
--------------------------------------------------------------------
-Mon May 2 13:23:49 UTC 2016 - tchvatal@suse.com
-
-- Split out device-mapper and clvm to separate spec files
- * No factual changes just deletion in the spec to keep it out
- of interacting with those parts
-
--------------------------------------------------------------------
-Fri Apr 29 11:05:04 UTC 2016 - tchvatal@suse.com
-
-- Do not explicitely require expat it is only used by thin_provisioning
-
--------------------------------------------------------------------
-Thu Apr 28 20:40:17 UTC 2016 - tchvatal@suse.com
-
-- There is no factual reason to keep the device mapper out of /usr
- so just match everything else
-
--------------------------------------------------------------------
-Thu Apr 28 20:12:48 UTC 2016 - tchvatal@suse.com
-
-- Remove device-mapper-static.patch as there should be no need to
- have static library here and it can be reenabled with some explanation
- if needed
-
--------------------------------------------------------------------
-Thu Apr 28 19:57:54 UTC 2016 - tchvatal@suse.com
-
-- Rename device-mapper-link to device-mapper-link.patch
-
--------------------------------------------------------------------
-Mon Mar 7 01:53:34 UTC 2016 - lwang@suse.com
-
-- not output error message inside retry loops to avoid noisy error
- message being output inside retry loops in case of remove failure
- because device busy. (bsc#940298 boo#957059)
- add: libdm-iface-not-output-error-message-inside-retry-loop.patch
-
--------------------------------------------------------------------
-Thu Jan 28 03:47:31 UTC 2016 - lwang@suse.com
-
-- Add 'Also=lvm2-lvmetad.socket' in '[Install]' section of lvm2-lvmetad.
- service to remove lvm2-lvmetad.socket when disable lvm2-lvmetad.service.
- (bsc#960044)
- add: lvm2-lvmetad.service-add-Also-lvm2-lvmetad.socket.patch
-
--------------------------------------------------------------------
-Wed Jan 27 05:38:07 UTC 2016 - lwang@suse.com
-
-- Split thin-provisioning-tools from lvm2 package for easier maintenance.
-- Update to lvm2-2.02.141 (device-mapper-1.02.115)
- - Remove patches:
- lvm2-do-not-strip-pdata_tools.patch: thin-provisioning-tools patch
- lvmetad.c-ignore-lvmetad-global-handle-on-disconnect.patch:
- already in upstream
- no_buildroot_shared.diff: LVM_SHARED_PATH dropped by upstream
-
--------------------------------------------------------------------
-Mon Dec 14 14:52:00 CET 2015 - tiwai@suse.de
-
-- Fix missing dependency on coreutils for initrd macros (boo#958562)
-- Call missing initrd macro at postun (boo#958562)
-
--------------------------------------------------------------------
-Fri Dec 11 16:03:58 UTC 2015 - dimstar@opensuse.org
-
-- Re-add lvm2-do-not-strip-pdata_tools.patch: this is still needed.
-
--------------------------------------------------------------------
-Tue Aug 25 02:27:10 UTC 2015 - lwang@suse.com
-
-- Fix boot failed due to segfault at libc (bnc#942755)
- add: lvmetad.c-ignore-lvmetad-global-handle-on-disconnect.patch
-
--------------------------------------------------------------------
-Thu Aug 6 06:13:20 UTC 2015 - lwang@suse.com
-
-- fix spec to change /sbin/thin-check to %{_sbindir}/thin-check.
- (bnc#940754)
-
--------------------------------------------------------------------
-Mon Jul 27 19:35:15 UTC 2015 - mpluskal@suse.com
-
-- Update thin-provisioning tools to 0.5.3
- * Fix bug where the tools would crash if given a very large
- metadata device to restore to.
- * - thin_delta, thin_trim
- * --clear-needs-check flag for cache_check
- * space map checking for thin check
-- Drop unnecessary lvm2-do-not-strip-pdata_tools.patch
-
--------------------------------------------------------------------
-Fri Jul 24 13:16:09 UTC 2015 - dvaleev@suse.com
-
-- Allow building without clvm (boo#923127)
- Keep clvm2 building by default
-
--------------------------------------------------------------------
-Tue Jul 14 09:05:13 UTC 2015 - lwang@suse.com
-
-- dmeventd: fix dso_name compare error. dso_name is thought as not
- empty and doesn't create monitor thread. (bnc#935623)
- add: dmeventd-fix-dso-name-wrong-compare.patch
-
--------------------------------------------------------------------
-Tue Jul 14 05:41:55 UTC 2015 - lzhong@suse.com
-
-- 13-dm-disk.rules: Import ID_FS_XXX variables from udev
- database(bnc#909358)
- If the disk is unavailable we need to import the existing ID_FS_XXX
- variables from the database, otherwise the filesystem UUID won't
- be set and the by-uuid symlink will disappear, leading to
- intermittent boot failures
- + Import-ID_FS_XXX-variables-bnc909358.patch
-
-- 10-dm.rules: Reset state variables for spurious events (bsc#932300)
- + 10-dm.rules-Reset-state-variable-for-spurious-events.patch
-
--------------------------------------------------------------------
-Tue May 19 16:30:47 UTC 2015 - jeffm@suse.com
-
-- Update to 2.02.120
- - Fixed numerous bugs(see WHATS_NEW for full details)
- - Deleted dab3ebce-devices-Do-not-support-unpartitioned-DASD.patch (upstream)
-
--------------------------------------------------------------------
-Fri Apr 3 02:45:02 UTC 2015 - lzhong@suse.com
-
-- fsadm: add support for btrfs(fate#318413)
- fsadm-add-support-for-btrfs.patch
-
--------------------------------------------------------------------
-Mon Mar 23 07:50:05 UTC 2015 - lwang@suse.com
-
-- Moved BuildRequires: libcorosync-devel and libdlm-devel from lvm package
- to clmv package to avoid dracut build needing cluster stack to be built.
- (bsc#923127)
-
--------------------------------------------------------------------
-Sat Feb 14 14:06:36 UTC 2015 - i@marguerite.su
-
-- provides libdevmapper.so.1.02 libdevmapper-event.so.1.02
- for VirtualBox.
-
--------------------------------------------------------------------
-Thu Feb 5 03:13:52 UTC 2015 - lwang@suse.com
-
-- LVM2 does not support unpartitioned DASD device which has special
- format in the first 2 tracks and will siliently discards LVM2 lable
- information written to it when pvcreate. (bsc#894202)
- Add: dab3ebce-devices-Do-not-support-unpartitioned-DASD.patch
-- Delete lvm2-lvmetad.socket from %service_del_preun/postun to avoid
- lvmetad.service being started by 'systemctl retry-start' when updating
- package. (bsc#914415)
-
--------------------------------------------------------------------
-Thu Jan 22 09:45:12 UTC 2015 - mpluskal@suse.com
-
-- Don't replace lvm.conf
-
--------------------------------------------------------------------
-Mon Jan 12 08:33:14 UTC 2015 - mpluskal@suse.com
-
-- Re-add lvm2-lvmetad.service to %service_add_pre/post
-- Add service registrations for cmirrord and clvm
-- Correct category for device-mapper-devel
-
--------------------------------------------------------------------
-Thu Jan 8 15:21:17 UTC 2015 - dimstar@opensuse.org
-
-- Add lvm2-do-not-strip-pdata_tools.patch: Change build system to
- not strip pdata_tools during installation. We need the file in
- tact in order to be able to produce valid debuginfo packages
- (boo#910327).
-
--------------------------------------------------------------------
-Mon Dec 22 07:10:10 UTC 2014 - lwang@suse.com
-
-- delete lvm2-lvmetad.service from %service_add_pre/post and
- %service_del_preun/postun to avoid lvm2-lvmetad.service running
- when use_lvmetad=0. (bnc#901859)
-- locking_type is set to 3(clustered lock) by default will output
- warning message if cmirrord is not running. Set to 1 to be same
- with upstream. (bnc#906710)
-- Set silent default to 0 to avoid some commands have no output
- and to be same with upstream. (bnc#888798)
-
--------------------------------------------------------------------
-Mon Dec 8 21:19:13 UTC 2014 - jengelh@inai.de
-
-- spec: replace some shell variables and paths by rpm macros
-- shorten filelists by using wildcards
-
--------------------------------------------------------------------
-Wed Dec 3 03:23:47 UTC 2014 - jeffm@suse.com
-
-- Update to 2.02.114
- - Removed cmirrord-fix-s390-endian-issue.patch
- - Renumbered patches to allow for upstream patches to be applied
- before local ones.
-
--------------------------------------------------------------------
-Wed Nov 19 22:40:13 UTC 2014 - dimstar@opensuse.org
-
-- Drop libudev-devel BuildRequires: we already buildrequire
- pkgconfig(libudev), which is the better choice, as it allows us
- to get libudev-mini-devel.
-
--------------------------------------------------------------------
-Mon Nov 10 09:01:35 UTC 2014 - dimstar@opensuse.org
-
-- Require device-mapper by device-mapper-devel: otherwise, the .so
- symlinks might happen to point to no target.
-
--------------------------------------------------------------------
-Tue Oct 28 07:18:36 UTC 2014 - lwang@suse.com
-
-- Delete BuildRequire for device-mapper-devel for all symbols needed
- is created in ./include/.symlinks file.
-- Add link /usr/sbin/lvm file to avoid others using /usr/sbin/lvm
-
--------------------------------------------------------------------
-Fri Sep 26 07:09:27 UTC 2014 - lwang@suse.com
-
-- recover no_buildroot_shared.diff, this may cause gcc error
-
--------------------------------------------------------------------
-Wed Sep 24 08:24:13 UTC 2014 - lwang@suse.com
-
-- All patches eliminated since update to 2.02.111
- - Eliminated 25 patches in lvm2 package:
- no_buildroot_shared.diff: don't know why necessary change this
- pipe_buff-definition.diff: don't know why necessary
- handle_extended_devt.diff: not need(bnc#525060 not reproduce even without this patch)
- support-drbd-filter.diff: source to patch not found
- lvm-path.patch: not needed, upstream fixed hardcode
- suppress_locking_failer_message.patch: no doc as to why suppress warning
- add_scm_support.patch: definition device_info_t _device_info is no longer exist
- upstream patches(18):
- man_page_sectors.diff
- make_raid1_default.diff
- remove-fedora-systemd.patch
- 0001-lvmetad-Init-lazily-to-avoid-socket-access-on-config.patch
- do_not_read_from_mirrors_have_failed_devices.diff
- avoid_reading_failed_dev_in_mirrored_log.diff
- mirrored_log_fixed_when_double_fault_occurs.diff
- device_is_usable_mem_leak.diff
- clmvd-fix-decriptor-leak-on-restart.patch
- clvmd-Fix-node-up-down-handing-in-corosync-module.patch
- clvmd-Avoid-a-3-way-deadlock-in-dead-client-cleanup.patch
- 0001-clvmd-avoid-logging-in-signal-handler.patch
- 0001-RAID-Make-RAID-4-5-6-display-sync-status-under-headi.patch
- clvmd-fix-debugging-level-set-in-clvmd_set_debug-function.patch
- 0001-toolcontext-Only-reopen-stdin-if-readable.patch
- systemd-lvm2-activation-generator-report-only-error.patch
- systemd-use-umask-022-for-generated-systemd-units-by.patch
- remove-quote-in-lvm2-monitor.patch
-
- - Eliminated 6 patches in device-mapper package:
- bug-479104_device-mapper-dmsetup-deps-export.patch:merged with device-mapper-dmsetup-export.patch
- udev_sync-cookie_set-1-on-each-dm_task_set_cookie-ca.patch: already included in upstream
- increase-minor-version.diff: not needed
- segault_for_truncated_string_token.patch: upstream
- s390-sectorsize4096.patch: upstream
- add_integrate_flush_flag.patch: included in cmirrord_improvment_performance.patch
-
- - Moved device-mapper patches to lvm2:
- device-mapper-dmsetup-export.patch(bnc#707253)
- device-mapper-gcc-warnings.patch
- device-mapper-static.patch
- device-mapper-link
- udev_rules-update.diff(bnc#78902,bnc#789019,bnc#789020)
-
--------------------------------------------------------------------
-Wed Sep 24 02:34:46 UTC 2014 - lwang@suse.com
-
-- cmirrord has endian issue which cause cmirrord start fail on s390
- patch: cmirrord-fix-s390-endian-issue.patch(bnc#890452,bnc#893684)
-
--------------------------------------------------------------------
-Thu Sep 11 15:55:50 UTC 2014 - jeffm@suse.com
-
-- Integrated device-mapper and thin-provisioning packages into
- lvm2 package. device-mapper and lvm2 have been included in
- the same source repository for some time.
-
--------------------------------------------------------------------
-Thu Sep 11 05:17:27 UTC 2014 - jeffm@suse.com
-
-- Update to 2.02.111
- - Eliminated 21 patches.
-
--------------------------------------------------------------------
-Wed Sep 3 01:48:48 CEST 2014 - ro@suse.de
-
-- sanitize release line in specfile
-
--------------------------------------------------------------------
-Fri Jul 4 09:14:10 UTC 2014 - dmzhang@suse.com
-
-- bnc#885632, set multipath_componnet_detection = 1 per default
-
--------------------------------------------------------------------
-Fri Jun 13 10:31:48 CEST 2014 - hare@suse.de
-
-- Generate all symlinks even for multipath events (bnc#875233)
- patch: udev-Check-for-DM_NR_VALID_PATHS.patch
-
--------------------------------------------------------------------
-
-Tue May 30 09:01:08 UTC 2014 - lmb@suse.com
-
-- Versioning for the lvm2-cmirrord dependencies
-
--------------------------------------------------------------------
-Thu May 29 10:01:35 UTC 2014 - dmzhang@suse.com
-
-- bnc#878930, systemd is putting out an erroneous message about lvm2-monitor.service
- patch: remove-quote-in-lvm2-monitor.patch
-
--------------------------------------------------------------------
-Wed May 28 16:45:45 UTC 2014 - lwang@suse.com
-
-- fix lvm2-activation{,-early}.service is marked world-inaccessible (bnc#878481)
- add systemd-use-umask-022-for-generated-systemd-units-by.patch
-- add comment to lvm.conf to inform user to start lvm2-lvmetad.socket
- if it is not started in case of use_lvmetad = 1 (bnc#878473)
-- disable lvmetad in lvm.conf to fix it (bnc#862076)
-
--------------------------------------------------------------------
-Wed May 28 15:46:58 UTC 2014 - lwang@suse.com
-
-- bnc#878121, modify clvmd.ocf start debug level -d2 to d0
-
--------------------------------------------------------------------
-Wed May 28 14:57:23 UTC 2014 - lwang@suse.com
-
-- bnc#870598, change lockdir to /run/lvm/lock
- modify lvm.conf
- bnc#854092, backport patches to fix 'nohup lvm' crash
- patch:0001-toolcontext-Only-reopen-stdin-if-readable.patch
- bnc#870824, defaut the mirrortype to mirror when clvmd is running
- patch:use-mirrortype-asdefault-whenclvmdrunning.patch
- bnc#859824, get rid of the annoying message 'LVM activation generator successfully completed'
- patch:systemd-lvm2-activation-generator-report-only-error.patch
- bnc#837538, fix closedown of clvmd
- patch:fix-closedown-before-thread-finish.patch
-
--------------------------------------------------------------------
-Wed May 28 14:50:13 UTC 2014 - lwang@suse.com
-
-- Added: clvmd-fix-debugging-level-set-in-clvmd_set_debug-function.patch
- This patch is missed in sle12, added from sle11sp3
- Fix debugging level set in clvmd_set_debug by using the correct
- variable (bnc#785467),change default -d0 to -d2
-
--------------------------------------------------------------------
-Wed May 28 14:34:04 UTC 2014 - meissner@suse.com
-
-- add missing %pre section, specify all sockets and services in
- all 4 calls.
-
--------------------------------------------------------------------
-Mon May 12 08:11:08 UTC 2014 - lwang@suse.com
-
--bnc#871176, 0001-RAID-Make-RAID-4-5-6-display-sync-status-under-headi.patch
-
--------------------------------------------------------------------
-Wed Apr 16 09:11:32 UTC 2014 - trenn@suse.de
-
-- Switch from mkinitrd to dracut
- - Dracut already has a lvm module and takes care that the right stuff is
- include into initrd, therefore remove:
- - mkinitrd-lvm2-boot.sh
- - mkinitrd-lvm2-setup.sh
- mkinitrd scripts from sources
- - Add dracut macros in %post and %posttrans to ensure initrd recreation
-- Remove unneeded comments in .spec file
-- Do not compile in DATE and TIME to avoid build unneeded retriggering in obs
- Add: cmirrord_remove_date_time_from_compilation.patch
-
--------------------------------------------------------------------
-Tue Apr 8 08:47:51 UTC 2014 - lwang@suse.com
-
-- bnc#862403, modify lvm.conf to add filter to exclude floppy and cdrom
-
--------------------------------------------------------------------
-Tue Mar 25 09:08:16 UTC 2014 - dmzhang@suse.com
-
-- backport more patches from slesp3(bnc#831518)
- scm support:
- add_scm_support.patch
- mirrored log fix:
- do_not_read_from_mirrors_have_failed_devices.diff
- avoid_reading_failed_dev_in_mirrored_log.diff
- mirrored_log_fixed_when_double_fault_occurs.diff
- device_is_usable_mem_leak.diff
- clvmd:
- clmvd-fix-decriptor-leak-on-restart.patch
- clvmd-Avoid-a-3-way-deadlock-in-dead-client-cleanup.patch
- clvmd-Fix-node-up-down-handing-in-corosync-module.patch
- 0001-clvmd-avoid-logging-in-signal-handler.patch
- fate#314367, missing patch
- lvconvert-cluster-mirrored-disk-failed.patch
- other fix:
- pvmove_support_clustered_vg.diff
- suppress_format1_size_warning.diff
- display-dm-name-for-lv-name.diff
- no longer needed patches:
- autoactivate-lvmetad-with-generator.patch
-
--------------------------------------------------------------------
-Thu Feb 20 16:23:21 UTC 2014 - arvidjaar@gmail.com
-
-- add 0001-lvmetad-Init-lazily-to-avoid-socket-access-on-config.patch
- avoid connect to lvmetad.socket too early to prevent deadlock during
- "systemctl daemon-reload" (bnc#862076)
-
--------------------------------------------------------------------
-Thu Feb 13 06:39:47 UTC 2014 - dmzhang@suse.com
-
-- fate#315092, improve performance of cluster mirror
- add cmirrord_improvment_performance.patch
-
--------------------------------------------------------------------
-Wed Feb 12 15:17:05 UTC 2014 - arvidjaar@gmail.com
-
-- add autoactivate-lvmetad-with-generator.patch - if use_lvmetad=1,
- automatically activate lvm2-lvmetad.socket to ensure lvmetad is
- started when required (bnc#862076)
-
--------------------------------------------------------------------
-Wed Jan 22 14:34:41 UTC 2014 - henrik.kuhn@origenis.de
-
-- added a lvm2-devel package definition
-
--------------------------------------------------------------------
-Mon Jan 6 07:43:59 UTC 2014 - dmzhang@suse.com
-
-- add csm_convert to lvm2-clvm package(bnc#854076)
-- system fails to boot due to missing /usr/sbin/lvm(bnc#837954)
-- lvm2 systemd incorrectly uses dependencies on Fedora services(bnc#851741)
-- set use_lvmetad = 1 as default of lvm.conf(bnc#854413)
-- drop patch dont_ignore_tmp_device_file.diff
-- backport patches from sle11sp3
- fate#314367,cluster_support_mirrord_log.diff
- fate#312248,make-mirror-legs-on-different-tag-pvs.patch
- improve-mirror-legs-on-different-tag-pvs.patch
-- set default mirror to md_raid1 insdead of dm_mirror for better performance
-- enable lvm2-lvmetad.socket by default
-
--------------------------------------------------------------------
-Sun Oct 27 21:44:41 CET 2013 - ohering@suse.de
-
-- Remove /etc/sysconfig/lvm to avoid errors during mkinitrd run
- LVM_VGS_ACTIVATED_ON_BOOT is not handled anymore with systemd
-- Remove fillup and insserv from PreReq
-
--------------------------------------------------------------------
-Mon Oct 21 08:09:41 UTC 2013 - dmzhang@suse.com
-
-- bnc#779965, use export before %configure in spec
-
--------------------------------------------------------------------
-Wed Sep 11 10:18:47 CEST 2013 - fcrozat@suse.com
-
-- Add lvm-path.patch: fix lvm binary path in systemd generator.
-- Use %_tmpfilesdir macro for tmpfiles directory.
-
--------------------------------------------------------------------
-Sun Sep 8 22:20:46 UTC 2013 - crrodriguez@opensuse.org
-
-- Set all "run" directories relative to /run not just the "lock"
- location
-- Install /usr/lib/tmpfiles.d/lvm2.conf as required to ensure
- such runtime directories are _always_ there.
-
--------------------------------------------------------------------
-Wed Aug 28 11:15:54 UTC 2013 - meissner@suse.com
-
-- replace BuildRequires: systemd by pkgconfig(udev) again
- to avoid cycles.
-
--------------------------------------------------------------------
-Tue Aug 20 07:59:06 UTC 2013 - dmzhang@suse.com
-
-- add systemd support to lvm2 package
- split device-mapper to another package.
-
--------------------------------------------------------------------
-Tue Jul 16 14:55:10 CEST 2013 - ohering@suse.de
-
-- Remove usage of absolute paths in mkinitrd scripts
-
--------------------------------------------------------------------
-Tue Jul 16 14:39:31 CEST 2013 - ohering@suse.de
-
-- Fix parsing lvdisplay -c output with more than 10 volumes in
- mkinitrd-lvm2-setup.sh (bnc#826727)
-
--------------------------------------------------------------------
-Mon Apr 22 14:01:29 UTC 2013 - cfarrell@suse.com
-
-- license update: GPL-2.0 and LGPL-2.1
- Presence of multiple files (both GPL and LGPL) with "only" licenses
-
--------------------------------------------------------------------
-Tue Apr 16 11:57:28 UTC 2013 - mmeister@suse.com
-
-- Added url as source.
- Please see http://en.opensuse.org/SourceUrls
-
--------------------------------------------------------------------
-Fri Feb 15 11:44:36 UTC 2013 - rmilasan@suse.com
-
-- Move all udev releated files in the appropriate udev directory.
-
--------------------------------------------------------------------
-Wed Nov 28 09:37:23 UTC 2012 - rmilasan@suse.com
-
-- udev_sync-cookie_set-1-on-each-dm_task_set_cookie-ca.patch:
- cookie_set=1 on each dm_task_set_cookie call (bnc#788882)
-
--------------------------------------------------------------------
-Mon Nov 12 10:41:45 UTC 2012 - seife+obs@b1-systems.com
-
-- fix 10-dm.rules (bnc#789021)
-- port dmsetup export patch to new LVM code (bnc#789019,bnc#789020)
-
--------------------------------------------------------------------
-Mon Nov 5 21:10:28 UTC 2012 - hrvoje.senjan@gmail.com
-
-- Now also fix devmapper-setup
-
--------------------------------------------------------------------
-Mon Nov 5 12:08:26 UTC 2012 - hrvoje.senjan@gmail.com
-
-- Adapt mkinitrd scripts to new udev locataion
-
--------------------------------------------------------------------
-Sun Nov 4 02:31:00 UTC 2012 - crrodriguez@opensuse.org
-
-- Fix booting ... place udev rules in the proper location..
-
--------------------------------------------------------------------
-Thu Oct 18 12:35:30 UTC 2012 - hrvoje.senjan@gmail.com
-
-- Change the default locking dir to reflect the change in filesystem package
-
--------------------------------------------------------------------
-Wed Oct 17 23:01:54 UTC 2012 - nfbrown@suse.com
-
-- lvm2.spec: merge rules for device-mapper and
- lvm2-clvm packages, so there is only one
- spec file and all packages are built consistently.
-
--------------------------------------------------------------------
-Tue Oct 16 09:34:40 UTC 2012 - coolo@suse.com
-
-- build against the minimal udev to avoid cycles
-- the sysvinit requires are no longer necessary
-
--------------------------------------------------------------------
-Tue Oct 16 04:19:59 UTC 2012 - nfbrown@suse.com
-
-- Upgrade to LVM2-2-02-98. Improvements include
- improved interaction with udev and systemd,
- improved dmraid support, and new command
- "blkdeactivate".
-
--------------------------------------------------------------------
-Thu Sep 27 01:11:17 UTC 2012 - nfbrown@suse.com
-
-- lvm2.spec: make sure MODPROBE_CMD is set properly
- when configure is run. Without it, modules are
- not auto-loaded. (bnc#779965)
-
--------------------------------------------------------------------
-Fri Apr 20 07:52:09 UTC 2012 - rmilasan@suse.com
-
-- Run update of initrd at %post and %postun.
- We need this to make sure initrd reflects the updates.
-
--------------------------------------------------------------------
-Sun Sep 18 17:17:12 UTC 2011 - jengelh@medozas.de
-
-- Remove redundant tags/sections from specfile
- (cf. packaging guidelines)
-- Use %_smp_mflags for parallel build
-
--------------------------------------------------------------------
-Fri May 27 09:09:35 UTC 2011 - lnussel@suse.de
-
-- don't unconditionally enable boot.lvm by default. yast takes care
- of enabling the script when creating lvm volumes.
-- don't hard require boot.device-mapper in boot.dmraid. dm-mod is
- autoloaded when accessing /dev/mapper/control anyways.
-
--------------------------------------------------------------------
-Thu Mar 10 11:07:22 UTC 2011 - coolo@novell.com
-
-- prereq sysvinit(boot.device-mapper) to fix build
-
--------------------------------------------------------------------
-Tue Feb 15 08:48:48 UTC 2011 - xwhu@novell.com
-
-- Update to LVM 2.02.84
- - Fix handling of simultaneous mirror image and mirrored log
- image failure.
- - Fix vgremove to allow removal of VG with missing PVs
- - Remove log directly if all mirror images of a mirrored log fail
- - Fix potential for corruption during cluster mirror device
- failure
- - Allow internal suspend and resume of origin without its
- snapshots
- - Allow exclusive activation of snapshots in a cluster
-
--------------------------------------------------------------------
-Thu Nov 11 12:24:04 UTC 2010 - coolo@novell.com
-
-- own parent directories for device-mapper files
-
--------------------------------------------------------------------
-Sun Oct 31 12:37:02 UTC 2010 - jengelh@medozas.de
-
-- Use %_smp_mflags
-
--------------------------------------------------------------------
-Fri Jul 16 10:11:59 UTC 2010 - xwhu@novell.com
-
-- bnc#556177, undefined symbol error while loading dmevent so.
-
--------------------------------------------------------------------
-Wed Jun 23 05:50:12 UTC 2010 - xwhu@novell.com
-
-- Update to LVM.2.02.67
- - Require partial option in lvchange --refresh for partial LVs
- - Add replicators' LVs to dtree for activation
- - Add lvm2app interfaces to lookup a vgname from a pvid and pvname
- - Fix memory leak for invalid regex pattern input
- - Disallow the direct removal of a merging snapshot
- - Fix lvconvert error message when existing mirrored LV is not found
- - Add LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES environment variable
- - Improve snapshot merge metadata import validation
-
--------------------------------------------------------------------
-Tue Jun 1 14:06:38 UTC 2010 - xwhu@novell.com
-
-- Specify udev_sync and udev_rules in /etc/lvm/lvm.conf
-
--------------------------------------------------------------------
-Fri May 21 03:41:47 UTC 2010 - xwhu@novell.com
-
-- Fix mkinitrd-lvm2 to use udev rules for lvm2
-
--------------------------------------------------------------------
-Mon Apr 26 16:51:10 CEST 2010 - ro@suse.de
-
-- fix lvm2-clvm specfile so that patches apply
-
--------------------------------------------------------------------
-Sat Apr 3 03:17:12 UTC 2010 - xwhu@novell.com
-
-- Upgrade to LVM2 2.02.58
- - Rename liblvm.so to liblvm2app.so
- - Introduce lvconvert --use_policies
- - Add readonly locking type to replace implementation of
- --ignorelockingfailure
- - Add liblvm APIs to implement creation and deletion of VGs
- - Add activation/udev_sync to lvm.conf
- - Enable dmeventd monitoring section of config file by default
- - Add --pvmetadatacopies for pvcreate, vgcreate, vgextend,
- vgconvert.
-
--------------------------------------------------------------------
-Sun Nov 29 06:58:45 UTC 2009 - xwhu@novell.com
-
-- Link liblvm2cmd.so to libdevmapper-event.so (bnc#556177)
-
--------------------------------------------------------------------
-Sun Nov 15 10:40:19 CET 2009 - meissner@suse.de
-
-- quilt refreshed all patches.
-
--------------------------------------------------------------------
-Mon Oct 12 13:31:12 UTC 2009 - xwhu@novell.com
-
-- make $tmp_mnt/etc/sysconfig before copying file into (bnc#525237)
-
--------------------------------------------------------------------
-Wed Sep 23 06:38:47 UTC 2009 - xwhu@novell.com
-
-- Add -lvm2- infix to mkinitrd scripts
-- collect_lvm reads /etc/sysconfig/lvm (bnc#523944)
-
--------------------------------------------------------------------
-Fri Aug 28 07:37:13 UTC 2009 - xwhu@novell.com
-
-- Support extended dev with major 259
-
--------------------------------------------------------------------
-Fri Jun 26 11:08:39 CST 2009 - xwhu@suse.de
-
-- bnc#510058, typo in dont_ignore_tmp_device_file.diff, which hangs
- mkinitrd
-
-Mon May 25 16:47:18 CST 2009 - xwhu@suse.de
--------------------------------------------------------------------
-
-- Cleanup scripts for mkinitrd, so that udev can activate root LV.
-
-Mon Apr 27 18:37:32 CST 2009 - xwhu@suse.de
--------------------------------------------------------------------
-
-- Upgrade to LVM2 2.02.45
- Avoid scanning empty metadata areas for VG names
- Pass --test from lvresize to fsadm as --dry-run.
- Remove duplicate cpg_initialize from clvmd startup.
- Add option to /etc/sysconfig/cluster to select cluster type for clvmd.
- Remove external dependency on the 'cut' command from fsadm.
- Fix pvs segfault when pv mda attributes requested for not available PV.
- Fix lvresize size conversion for fsadm when block size is not 1K.
- Add pv_mda_size to pvs and vg_mda_size to vgs.
- Add "--refresh" functionality to vgchange and vgmknodes.
- Fix vgrename using UUID if there are VGs with identical names.
- Fix segfault when invalid field given in reporting commands.
- Merge device-mapper into the lvm2 tree.
- Exit with non-zero status from vgdisplay if couldn't show any requested VG.
- Fix snapshot monitoring library to not cancel monitoring invalid snapshot.
- Fix conversion of md chunk size into sectors.
- Fix misleading error message when there are no allocatable extents in VG.
- Fix handling of PVs which reappeared with old metadata version.
- Fix mirror DSO to call vgreduce with proper parameters.
- Fix validation of --minor and --major in lvcreate to require -My always.
- Fix release: clvmd build, vgreduce consolidate & tests, /dev/ioerror warning.
-
--------------------------------------------------------------------
-Tue Mar 31 11:59:03 CST 2009 - xwhu@suse.de
-
-- Handle the case that drbd virtual device has the same PV uuid
- with the underlining physical device.
-
--------------------------------------------------------------------
-Wed Mar 25 23:14:29 CST 2009 - xwhu@suse.de
-
-- Do not filter out tmp device file(bnc#485572)
-- Do not try to activate VG when all paths are down already(bnc#479104)
-
--------------------------------------------------------------------
-Wed Mar 25 22:50:50 CST 2009 - xwhu@suse.de
-
-- Split CLVMD as a independent package
-
--------------------------------------------------------------------
-Tue Mar 24 00:23:13 CST 2009 - xwhu@suse.de
-
-- Fix for bnc#486952
- use "killproc -INT" instead of "killproc"
- handle signal in the main loop thread only
-
--------------------------------------------------------------------
-Thu Feb 26 14:08:22 CST 2009 - xwhu@suse.de
-
-- add daemon_options parameter to clvmd.ocf
-- check EUNLOCK for dlm_ls_unlock_wait
-
--------------------------------------------------------------------
-Wed Feb 25 18:39:26 CST 2009 - xwhu@suse.de
-
-- bnc#479422, check both lksb.sb_status and status.
-
--------------------------------------------------------------------
-Fri Feb 20 10:24:00 CET 2009 - xwhu@suse.de
-
-- simplify patch of dlm lock to clvmd
-
--------------------------------------------------------------------
-Fri Feb 20 08:06:37 CET 2009 - xwhu@suse.de
-
-- bnc#476861, clvmd.ocf doesn't report the correct status when
- kill -9 doesn't terminate the process
-
--------------------------------------------------------------------
-Thu Jan 22 13:00:26 CST 2009 - xwhu@suse.de
-
-- bnc#464851, use dlm instead of openais lck
-
--------------------------------------------------------------------
-Wed Jan 21 15:23:31 CET 2009 - ro@suse.de
-
-- do not require a specific package release from subpackage
- (bnc#467704)
-
--------------------------------------------------------------------
-Wed Dec 3 18:51:27 CST 2008 - xwhu@suse.de
-
-- Add OCF script for clvmd
-
--------------------------------------------------------------------
-Wed Nov 12 02:22:56 CST 2008 - xwhu@suse.de
-
-- bnc#443677. dmeventd DSOs are linked against liblvm2cmd
-
--------------------------------------------------------------------
-Thu Oct 9 11:54:47 CEST 2008 - xwhu@suse.de
-
-- bnc#432782. Remove vol_id in 64-lvm2.rules.
-
--------------------------------------------------------------------
-Mon Sep 29 14:09:33 CEST 2008 - ro@suse.de
-
-- buildreq: replace openais-devel by libopenais-devel
-
--------------------------------------------------------------------
-Wed Sep 24 18:25:40 CEST 2008 - ro@suse.de
-
-- change "udevsettle" to "udevadm settle"
-
--------------------------------------------------------------------
-Sat Sep 13 11:59:34 CEST 2008 - xwhu@novell.com
-
-- added missing directories to filelist
-
--------------------------------------------------------------------
-Wed Sep 10 13:43:17 CEST 2008 - xwhu@novell.com
-
-- Upgrade to 2.0.39
- Fix up cache for PVs without mdas after consistent VG metadata is processed.
- Update validation of safe mirror log type conversions in lvconvert.
- Fix lvconvert to disallow snapshot and mirror combinations.
- Fix reporting of LV fields alongside unallocated PV segments.
- Add --unquoted and --rows to reporting tools.
- Avoid undefined return value after _memlock manipulation in lvm2_run.
- Avoid link failure if configured without --enable-cmdlib or --enable-readline.
- Make clvmd return at once if other nodes down in a gulm or openais cluster.
- Fix and improve readahead 'auto' calculation for stripe_size.
- Fix lvchange output for -r auto setting if auto is already set.
- Fix ambiguous use of identifier error_message_produced.
- Fix add_mirror_images not to dereference uninitialized log_lv upon failure.
- Don't call openlog for every debug line output by clvmd.
- Add --force to lvextend and lvresize.
- Fix vgchange to not activate mirror leg and log volumes directly.
- Fix test directory clean up in make distclean.
-- pvcreate/pvremove/pvchange will create symlinks in /dev/disk/by-id/
- to the device file
--------------------------------------------------------------------
-Wed Sep 3 11:09:34 CEST 2008 - hare@suse.de
-
-- Call mkinitrd_setup during %post and %postun (bnc#413709)
-
--------------------------------------------------------------------
-Tue Sep 2 16:59:00 CEST 2008 - hare@suse.de
-
-- Fix initrd scripts if no 'root=' parameter is given
- (bnc#421546)
-
--------------------------------------------------------------------
-Mon Aug 25 12:49:58 CEST 2008 - aj@suse.de
-
-- Provide and obsolete evms.
-
--------------------------------------------------------------------
-Mon Aug 25 12:04:29 CEST 2008 - prusnak@suse.cz
-
-- enabled SELinux support [Fate#303662]
-
--------------------------------------------------------------------
-Fri Aug 22 12:58:08 CEST 2008 - xwhu@suse.de
-
-- Remove the -p option for fillup_and_insserv
-
--------------------------------------------------------------------
-Wed Aug 13 06:18:44 CEST 2008 - xwhu@suse.de
-
-- Add Should-Stop to boot.lvm
-
--------------------------------------------------------------------
-Thu Jul 31 16:13:59 CST 2008 - xwhu@suse.de
-
-- repack LVM2.2.02.38.tar.bz2 into bz2 format
-
--------------------------------------------------------------------
-Wed Jul 23 15:38:13 CEST 2008 - hare@suse.de
-
-- Include mkinitrd scriptlets.
-
--------------------------------------------------------------------
-Fri Jun 27 07:51:31 CEST 2008 - xwhu@suse.de
-
-- update to 2.02.38
- Fix tracking of validity of PVs with no mdas in lvmcache.
- Fix return values for reporting commands when run with no PVs, LVs, or VGs.
- Fix free_count when reading pool metadata.
- Fix segfault when using pvcreate on a device containing pool metadata.
- Fix segfault after _free_vginfo by remembering to remove vginfo from list.
- Fix setpriority error message to signed int.
- Fix uninitialised mutex in clvmd if all daemons are not running at startup.
- Fix fsadm.sh to work with older blockdev, blkid & readlink binaries.
- Fix lvresize to pass new size to fsadm when extending device.
- Fix nodes list in clvmd-openais, and allow for broadcast messages.
- Fix vgsplit internal counting of snapshot LVs.
- Fix vgmerge snapshot_count when source VG contains snapshots.
- Fix internal LV counter when a snapshot is removed.
- Fix metadata corruption writing lvm1-formatted metadata with snapshots.
- Fix lvconvert -m0 allocatable space check.
- Fix vgdisplay 'Cur LV' field to match lvdisplay output.
- Fix lv_count report field to exclude hidden LVs.
- Fix vgsplit to only move hidden 'snapshotN' LVs when necessary.
- Fix vgreduce to use vg_split_mdas to check sufficient mdas remain.
- Fix orphan VG name used for format_pool.
- Fix output if overriding command_names on cmdline.
- Fix vgsplit locking of new VG (2.02.30).
- Fix redundant lvresize message if vg doesn't exist.
- Fix another allocation bug with clvmd and large node IDs.
- Fix uninitialised variable in clvmd that could cause odd hangs.
-
--------------------------------------------------------------------
-Mon May 5 11:19:29 CEST 2008 - aj@suse.de
-
-- Fix requires of clvm.
-
--------------------------------------------------------------------
-Wed Apr 30 12:17:29 CEST 2008 - hare@suse.de
-
-- Fixup build errors
-
--------------------------------------------------------------------
-Wed Apr 30 09:22:55 CEST 2008 - xwhu@suse.de
-
-- Cleanup clvmd code on openais stack to make it work
-- Split clvmd into a separate package (bnc#384708)
-
--------------------------------------------------------------------
-Wed Apr 23 12:16:22 CEST 2008 - xwhu@suse.de
-
-- Change async lock primitives to sync
-
--------------------------------------------------------------------
-Wed Apr 23 07:29:12 CEST 2008 - xwhu@suse.de
-
-- Fix build aginst beta
- definition of PIPE_BUF is missing
-
--------------------------------------------------------------------
-Tue Apr 22 10:47:17 CEST 2008 - xwhu@suse.de
-
-- Enable CLVM support in LVM2
-
--------------------------------------------------------------------
-Wed Feb 20 11:47:30 CET 2008 - fehr@suse.de
-
-- allow large minor number on command line with option --minor
- (bnc#362960)
-
--------------------------------------------------------------------
-Wed Feb 13 14:11:32 CET 2008 - fehr@suse.de
-
-- update to new version 2.02.33
- Fix mirror log name construction during lvconvert. (2.02.30)
- Make monitor_dev_for_events recurse through the stack of LVs.
- Clean up some more compiler warnings.
-
--------------------------------------------------------------------
-Thu Feb 7 08:59:16 CET 2008 - hare@suse.de
-
-- Enable dmeventd (FATE#303381)
-
--------------------------------------------------------------------
-Thu Jan 31 12:01:35 CET 2008 - fehr@suse.de
-
-- update to new version 2.02.32
- Fix two check_lv_segments error messages to show whole segment
- Refactor mirror log attachment code
- Fix pvs, vgs, lvs error exit status on some error paths
- Avoid readahead error message with default setting of lvcreate -M1
- Set default readahead to twice maximium stripe size
- Reinstate VG extent size and stripe size defaults (halved)
- Change vgsplit -l (for unimplemented --list) into --maxlogicalvolumes
- Fix process_all_pvs to detect non-orphans with no MDAs correctly
- Don't use block_on_error with mirror targets version 1.12 and above
- Update vgsplit to accept vgcreate options when new VG is destination
- Update vgsplit to accept existing VG as destination
- lvconvert waits for completion of initial sync by default
- Refactor vgcreate for parameter validation and add tests
- Add new convert_lv field to lvs output
- Print warning when lvm tools are running as non-root
- Prevent pvcreate from overwriting MDA-less PVs belonging to active VGs
- Fix a segfault if using pvs with --all argument
- Update --uuid argument description in man pages
- Fix vgreduce PV list processing not to process every PV in the VG
- Extend lvconvert to use polldaemon
- Add support for stacked mirrors
- Major restructuring of pvmove and lvconvert layer manipulation code
-
--------------------------------------------------------------------
-Mon Dec 10 12:29:12 CET 2007 - fehr@suse.de
-
-- update to new version 2.02.29
- Accept sizes with --readahead argument.
- Store size arguments as sectors internally.
- Attempt to remove incomplete LVs with lvcreate zeroing/activation problems.
- Add read_ahead activation code.
- Extend readahead arg to accept "auto" and "none".
- Prevent lvconvert -s from using same LV as origin and snapshot.
- Fix human-readable output of odd numbers of sectors.
- Show 'not usable' space when PV is too large for device in pvdisplay.
- Ignore and fix up any excessive device size found in metadata.
- Detect md superblocks version 1.0, 1.1 and 1.2.
- Handle new sysfs subsystem/block/devices directory structure.
- Add %PVS extents option to lvresize, lvextend, and lvcreate.
- Modify lvremove to prompt for removal if LV active on other cluster nodes.
- Add '-f' to vgremove to force removal of VG even if LVs exist.
-
--------------------------------------------------------------------
-Thu Nov 22 14:49:39 CET 2007 - fehr@suse.de
-
-- adapt man page for pvdisplay to program (#342862)
-- fix spec file to detect path to modprobe binary (#331968)
-
--------------------------------------------------------------------
-Thu Nov 22 12:44:16 CET 2007 - fehr@suse.de
-
-- update to new version 2.02.28
- Fix inconsistent licence notices: executables are GPLv2; libraries LGPLv2.1.
- Add support for renaming mirrored LVs.
- Add --mirrorlog argument to specify log type for mirrors.
- Fix lvdisplay man page to say LV size is reported in sectors, not KB.
- Fix snapshot cow area deactivation if origin is not active.
- Add vg_mda_count and pv_mda_count columns to reports.
- Handle vgsplit of an entire VG as a vgrename.
- Print warnings to stderr instead of stdout.
- Update vgcfgrestore man page.
- Allow keyboard interrupt during user prompts when appropriate.
- Add -f to vgcfgrestore to list metadata backup files.
- Add pvdisplay --maps implementation.
- Remove unsupported LVM1 options from vgcfgrestore man page.
- Update vgcfgrestore man page to show mandatory VG name.
- Update vgrename man page to include UUID and be consistent with lvrename.
-
--------------------------------------------------------------------
-Mon May 7 14:02:16 CEST 2007 - fehr@suse.de
-
-- update to new version 2.02.25
- Add devices/preferred_names config regex list for displayed device names
- Update pvck to include text metadata area and record detection
- Fix creation and conversion of mirrors with tags
- Fix vgsplit for lvm1 format (set and validate VG name in PVs metadata)
- Split metadata areas in vgsplit properly
- Fix vgremove to require at least one vg argument
- Fix reading of striped LVs in LVM1 format
- Fix vgsplit to handle mirrors
- Fix md signature check to handle both endiannesses
- Add devices/ignore_suspended_devices to ignore suspended dm devices
-
--------------------------------------------------------------------
-Tue Feb 20 16:57:34 CET 2007 - fehr@suse.de
-
-- add boot.dmraid to Should-Start in boot.lvm2
-
--------------------------------------------------------------------
-Sun Feb 11 18:49:50 CET 2007 - ro@suse.de
-
-- fix build as non-root and use DESTDIR
-
--------------------------------------------------------------------
-Mon Jan 8 16:15:23 CET 2007 - fehr@suse.de
-
-- fix buggy pointer arithmetic (#232117)
-
--------------------------------------------------------------------
-Mon Dec 18 10:39:49 CET 2006 - fehr@suse.de
-
-- update to new version 2.02.17
- Add missing pvremove error message when device doesn't exist.
- When lvconvert allocates a mirror log, respect parallel area constraints.
- Use loop to iterate through the now-ordered policy list in _allocate().
- Check for failure to allocate just the mirror log.
- Introduce calc_area_multiple().
- Support mirror log allocation when there is only one PV: area_count now 0.
- Fix detection of smallest area in _alloc_parallel_area() for cling policy.
- Add manpage entry for clvmd -T
- Fix gulm operation of clvmd, including a hang when doing lvchange -aey
- Fix hang in clvmd if a pre-command failed.
-
--------------------------------------------------------------------
-Wed Dec 6 10:07:57 CET 2006 - fehr@suse.de
-
-- update to new version 2.02.16
- Fix VG clustered read locks to use PR not CR.
- Adjust some alignments for ia64/sparc.
- Fix mirror segment removal to use temporary error segment.
- Add -T (startup timeout) switch to clvmd.
- Install lvmdump by default.
- Fix check for snapshot module when activating snapshot.
- Fix pvremove error path for case when PV is in use.
- Warn if certain duplicate config file entries are seen.
- Fix --autobackup argument which could never disable backups.
- Fix a label_verify error path.
- Fix adjusted_mirror_region_size() to handle 64-bit size.
- Add some missing bounds checks on 32-bit extent counters.
- Add Petabyte and Exabyte support.
- Fix lvcreate error message when 0 extents requested.
- lvremove man page: volumes must be cluster inactive before being removed.
- Protect .cache manipulations with fcntl locking.
- Change .cache timestamp comparisons to use ctime.
- Fix mirror log LV writing to set all bits in whole LV.
- Fix high-level free space check for partial allocations.
-
--------------------------------------------------------------------
-Mon Oct 30 12:19:07 CET 2006 - fehr@suse.de
-
-- update to new version 2.02.13 to finally fix bug #178321
- Add couple of missing files to tools/Makefile CLEAN_TARGETS.
- When adding snapshot leave cow LV mapped device active after zeroing.
- Fix a clvmd debug message.
- Add dev_flush() to set_lv().
- Add lvchange --resync.
- Perform high-level free space check before each allocation attempt.
- Don't allow a node to remove an LV that's exclusively active on anther node.
- Cope if same PV is included more than once in cmdline PE range list.
- Set PV size to current device size if it is found to be zero.
- Add segment parameter to target_present functions.
-
--------------------------------------------------------------------
-Tue Oct 17 10:55:33 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.12
- Fix pvdisplay to use vg_read() for non-orphans.
- Fall back to internal locking if external locking lib is missing or fails.
- Retain activation state after changing LV minor number with --force.
- Propagate clustered flag in vgsplit and require resizeable flag.
- Add clvmd function to return the cluster name. not used by LVM yet.
- Add cling allocation policy.
- Change _check_contiguous() to use _for_each_pv().
- Extend _for_each_pv() to allow termination without error.
- Abstract _is_contiguous().
- Remove duplicated pv arg from _check_contiguous().
- Accept regionsize with lvconvert.
- Add report columns with underscore before field names ending 'size'.
- Correct regionsize default on lvcreate man page (MB).
- Fix clvmd bug that could cause it to die when a node with a long name crashed
- Add device size to text metadata.
- Fix format_text mda_setup pv->size and pv_setup pe_count calculations.
- Fix _for_each_pv() for mirror with core log.
- Add lvm_dump.sh script to create a tarball of debugging info from a system.
- Capture error messages in clvmd and pass them back to the user.
- Remove unused #defines from filter-md.c.
- Make clvmd restart init script wait until clvmd has died before starting it.
- Add -R to clvmd which tells running clvmds to reload their device cache.
- Add LV column to reports listing kernel modules needed for activation.
- Show available fields if report given invalid field. (e.g. lvs -o list)
- Add timestamp functions with --disable-realtime configure option.
- Add %VG, %LV and %FREE suffices to lvcreate/lvresize --extents arg.
- Fix two potential NULL pointer derefs in error cases in vg_read().
- Separate --enable-cluster from locking lib options in lvmconf.sh.
- Add a missing comma in lvcreate man page.
-
--------------------------------------------------------------------
-Wed Sep 20 13:26:58 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.10
- Fix lvconvert mirror change case detection logic.
- Fix mirror log detachment so it correctly becomes a standalone LV.
- Extend _check_contiguous() to detect single-area LVs.
- Include mirror log (untested) in _for_each_pv() processing.
- Use MIRROR_LOG_SIZE constant.
- Remove struct seg_pvs from _for_each_pv() to generalise.
- Avoid adding duplicates to list of parallel PVs to avoid.
- Fix several incorrect comparisons in parallel area avoidance code.
- Fix segment lengths when flattening existing parallel areas.
- Log existing parallel areas prior to allocation.
- Fix mirror log creation when activation disabled.
- Don't attempt automatic recovery without proper locking.
- When using local file locking, skip clustered VGs.
- Add fallback_to_clustered_locking and fallback_to_local_locking parameters.
- lvm.static uses built-in cluster locking instead of external locking.
- Don't attempt to load shared libraries if built statically.
- Change default locking_lib to liblvm2clusterlock.so.
- Add skip_dev_dir() to process command line VGs.
- Stop clvmd complaining about nodes that have left the cluster.
- Move lvm_snprintf(), split_words() and split_dm_name() into libdevmapper.
- Add lvconvert man page.
- Add mirror options to man pages.
- Prevent mirror renames.
- Move CMDLIB code into separate file and record whether static build.
-
--------------------------------------------------------------------
-Wed Sep 13 13:00:55 CEST 2006 - fehr@suse.de
-
-- change BuildRequires to device-mapper-devel
-
--------------------------------------------------------------------
-Mon Aug 21 12:26:17 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.09
- Fix PE_ALIGN for pagesize over 32KB.
- Separate out LVM1_PE_ALIGN and pe_align().
- Add lvm_getpagesize wrapper.
- Add --maxphysicalvolumes to vgchange.
-
--------------------------------------------------------------------
-Wed Aug 16 11:16:13 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.08
- Add checks for duplicate LV name, lvid and PV id before writing metadata.
- Report all sanity check failures, not just the first.
- Fix missing lockfs on first snapshot creation. (#197850)
- Add unreliable --trustcache option to reporting commands.
- Fix locking for mimage removal.
- Fix clvmd_init_rhel4 'status' exit code.
-
--------------------------------------------------------------------
-Fri Jul 28 13:05:38 CEST 2006 - olh@suse.de
-
-- remove dropped boot.ibmsis from boot.lvm
-- boot.rootfsck should start before boot.lvm (#181972)
-
--------------------------------------------------------------------
-Wed Jul 26 16:34:45 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.06
- Fix activation logic in lvchange --persistent.
- Don't ignore persistent minor numbers when activating.
- Fix vgreduce --removemissing to return success if VG is already consistent.
- Fix return code if VG specified on command line is not found.
- Fix PV tools to include orphaned PVs in default output again.
- Prevent snapshots of mirrors.
- Fix lvcreate corelog validation.
- Add --config for overriding most config file settings from cmdline.
- Quote arguments when printing command line.
- Remove linefeed from 'initialising logging' message.
- Add 'Completed' debug message.
- Don't attempt library exit after reloading config files.
- Always compile with libdevmapper, even if device-mapper is disabled.
-
--------------------------------------------------------------------
-Mon May 22 17:13:21 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.06
- Propagate --monitor around cluster.
- Add --monitor to vgcreate and lvcreate to control dmeventd registration.
- Filter LCK_NONBLOCK in clvmd lock_vg.
- Add --nosync to lvcreate with LV flag NOTSYNCED.
- Use mirror's uuid for a core log.
- Add mirror log fault-handling policy.
- Improve mirror warning messages and tidy dmeventd syslog output.
- Propagate nosync flag around cluster.
- Allow vgreduce to handle mirror log failures.
- Add --corelog to lvcreate and lvconvert.
- Create a log header for replacement in-sync mirror log.
- Use set_lv() and dev_set() to wipe sections of devices.
- Add mirror_library description to example.conf.
- Fix uuid_from_num() buffer overrun.
- Increase maximum stripe size limit to physical extent size for lvm2 metadata.
- Fix activation code to check for pre-existing mirror logs.
- Ignore empty strings in config files.
- Require non-zero regionsize and document parameter on lvcreate man page.
- Invalidate cache if composition of VG changed externally.
-
--------------------------------------------------------------------
-Wed Apr 26 10:01:52 CEST 2006 - hare@suse.de
-
-- add LVM_DEVICE_TIMEOUT sysconfig variable to make sure
- udev has finished processing (#149979)
-- Fix init script dependencies
-
--------------------------------------------------------------------
-Mon Apr 24 18:32:56 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.05
- Fix vgid string termination in recent cache code
-
--------------------------------------------------------------------
-Thu Apr 20 17:11:07 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.04
- Check for libsepol.
- Add some cflow & scope support.
- Separate out DEFS from CFLAGS.
- Remove inlines and use unique function names.
-
--------------------------------------------------------------------
-Wed Apr 19 09:48:51 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.03
- vgrename accepts vgid and exported VG.
- Add --partial to pvs.
- When choosing between identically-named VGs, also consider creation_host.
- Provide total log suppression with 2.
- Fix vgexport/vgimport to set/reset PV exported flag so pv_attr is correct.
- Add vgid to struct physical_volume and pass with vg_name to some functions.
- If two or more VGs are found with the same name, use one that is not exported.
- Whenever vgname is captured, also capture vgid and whether exported.
- Remove an incorrect unlock_vg() from process_each_lv().
- Update extent size information in vgchange and vgcreate man pages.
- Introduce origin_from_cow() and lv_is_visible().
- pvremove without -f now fails if there's no PV label.
- Support lvconvert -s.
- Suppress locking library load failure message if --ignorelockingfailure.
- Propagate partial mode around cluster.
- Fix archive file expiration.
- Fix dmeventd build.
- clvmd now uses libcman rather than cman ioctls.
- clvmd will allow new cman to shutdown on request.
-
--------------------------------------------------------------------
-Thu Apr 6 15:57:04 CEST 2006 - fehr@suse.de
-
-- add option --mknodes to vgscan call in /etc/init.d/boot.lvm to
- avoid potential inconsistencies in minor number of dm devices after
- reboot when root fs is LVM LV (#139740)
-
--------------------------------------------------------------------
-Tue Mar 14 11:25:42 CET 2006 - fehr@suse.de
-
-- update to new version 2.02.02
- Add %.so: %.a make template rule.
- Switchover library building to use LIB_SUFFIX.
- Only do lockfs filesystem sync when suspending snapshots.
- Always print warning if activation is disabled.
- vgreduce removes mirror images.
- Add --mirrorsonly to vgreduce.
- vgreduce replaces active LVs with error segment before removing them.
- Set block_on_error parameter if available.
- Add target_version.
- Add details to format1 'Invalid LV in extent map' error message.
- Fix lvscan snapshot full display.
- Bring lvdisplay man page example into line.
- Add mirror dmeventd library.
- Add some activation logic to remove_mirror_images().
- lvconvert can remove specified PVs from a mirror.
- lvconvert turns an existing LV into a mirror.
- Allow signed mirrors arguments.
- Move create_mirror_log() into toollib.
- Determine parallel PVs to avoid with ALLOC_NORMAL allocation.
- Fix lv_empty.
-
--------------------------------------------------------------------
-Wed Jan 25 21:38:06 CET 2006 - mls@suse.de
-
-- converted neededforbuild to BuildRequires
-
--------------------------------------------------------------------
-Mon Dec 19 11:19:41 CET 2005 - fehr@suse.de
-
-- add new binary /sbin/lvconvert to file list
-
--------------------------------------------------------------------
-Tue Dec 13 13:09:21 CET 2005 - fehr@suse.de
-
-- add patch lvm-lock.diff to fix bug #138128
-
--------------------------------------------------------------------
-Tue Dec 6 16:10:12 CET 2005 - fehr@suse.de
-
-- update to new version 2.02.01
-
--------------------------------------------------------------------
-Tue Nov 8 12:05:32 CET 2005 - fehr@suse.de
-
-- add fix_striped_old_format.diff to allow striped volumes with
- old metadata format (#130433)
-- add fix_dm_as_pv.diff to allow usage of dm devices as PVs (#129960)
-
--------------------------------------------------------------------
-Mon Oct 17 12:38:18 CEST 2005 - fehr@suse.de
-
-- update to new version 2.01.15
-
--------------------------------------------------------------------
-Mon Sep 26 13:39:41 CEST 2005 - fehr@suse.de
-
-- fix bug in pvscan.c with PVs larger than 2TB in VGs
-
--------------------------------------------------------------------
-Thu Aug 4 14:49:51 CEST 2005 - fehr@suse.de
-
-- update to new version 2.01.14
-
--------------------------------------------------------------------
-Mon Jul 18 19:05:08 CEST 2005 - fehr@suse.de
-
-- update to new version 2.01.13
-
--------------------------------------------------------------------
-Thu Jun 16 10:21:03 CEST 2005 - fehr@suse.de
-
-- update to new version 2.01.12
-
--------------------------------------------------------------------
-Wed Jun 15 13:36:23 CEST 2005 - meissner@suse.de
-
-- add libselinux to nfb to enable selinux support.
-- use RPM_OPT_FLAGS.
-
--------------------------------------------------------------------
-Tue Jun 14 10:55:51 CEST 2005 - fehr@suse.de
-
-- update to new version 2.01.11
-
--------------------------------------------------------------------
-Wed May 4 11:01:23 CEST 2005 - fehr@suse.de
-
-- update to new version 2.01.10
-
--------------------------------------------------------------------
-Mon Apr 11 12:43:23 CEST 2005 - fehr@suse.de
-
-- use -y instead of -Y in options for call to fillup_and_insserv
- (#76689)
-- update to new version 2.01.09
-
--------------------------------------------------------------------
-Wed Mar 9 11:12:58 CET 2005 - fehr@suse.de
-
-- update to new version 2.01.07
-
--------------------------------------------------------------------
-Mon Mar 7 12:03:14 CET 2005 - fehr@suse.de
-
-- update to new version 2.01.06
-
--------------------------------------------------------------------
-Thu Feb 10 16:28:53 CET 2005 - fehr@suse.de
-
-- update to new version 2.01.04
-
--------------------------------------------------------------------
-Wed Feb 2 13:01:12 CET 2005 - fehr@suse.de
-
-- update to new version 2.01.03
-
--------------------------------------------------------------------
-Mon Jan 24 12:08:59 CET 2005 - fehr@suse.de
-
-- update to new version 2.01.02
-
--------------------------------------------------------------------
-Thu Jan 20 14:48:58 CET 2005 - fehr@suse.de
-
-- update to new version 2.01.01
-
--------------------------------------------------------------------
-Wed Jan 19 11:13:53 CET 2005 - fehr@suse.de
-
-- update to new version 2.01.00
-
--------------------------------------------------------------------
-Tue Jan 11 17:41:04 CET 2005 - fehr@suse.de
-
-- update to new version 2.00.33
-
--------------------------------------------------------------------
-Wed Jan 05 12:33:00 CET 2005 - arvin@suse.de
-
-- update to new version 2.00.32
-
--------------------------------------------------------------------
-Fri Dec 17 10:12:03 CET 2004 - arvin@suse.de
-
-- fixed -s option of vgdisplay (bug #49177)
-
--------------------------------------------------------------------
-Mon Nov 29 13:01:31 CET 2004 - fehr@suse.de
-
-- update to new version 2.00.29
-
--------------------------------------------------------------------
-Thu Nov 25 11:39:49 CET 2004 - fehr@suse.de
-
-- update to new version 2.00.27
-
--------------------------------------------------------------------
-Wed Nov 24 12:40:10 CET 2004 - fehr@suse.de
-
-- update to new version 2.00.26
-
--------------------------------------------------------------------
-Wed Sep 29 17:24:52 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.25
-
--------------------------------------------------------------------
-Wed Sep 22 17:40:28 CEST 2004 - fehr@suse.de
-
-- prevent buggy macro for MAJOR in kdev_t.h creep into code via
- include of linux/fs.h
-
--------------------------------------------------------------------
-Mon Sep 20 11:45:30 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.24
-
--------------------------------------------------------------------
-Thu Sep 16 15:03:58 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.23
-
--------------------------------------------------------------------
-Mon Sep 6 12:09:54 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.22
-
--------------------------------------------------------------------
-Mon Aug 23 12:46:37 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.21
-- new version obsoletes lvm2-vgscan.patch
-
--------------------------------------------------------------------
-Wed Jul 14 15:21:48 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.20
-
--------------------------------------------------------------------
-Mon Jun 7 11:45:15 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.16
-- add forgotten patch no-inc-audit.diff needed for STABLE
-
--------------------------------------------------------------------
-Mon May 24 14:14:37 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.15 to fix bug #41020
-
--------------------------------------------------------------------
-Mon May 24 08:31:31 CEST 2004 - hare@suse.de
-
-- Fixed vgscan on S/390 (readdir returned DT_UNKNOWN)
-
--------------------------------------------------------------------
-Thu May 13 17:49:47 CEST 2004 - fehr@suse.de
-
-- ignore udev names in default configuration to prevent yast2
- confusion (#36869)
-
--------------------------------------------------------------------
-Mon Apr 19 18:09:49 CEST 2004 - fehr@suse.de
-
-- accept additional devices (IDE->64, iseries/vd->8, #39114)
-
--------------------------------------------------------------------
-Thu Apr 1 10:28:39 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.09 (fixes #34657 and #36877)
-
--------------------------------------------------------------------
-Tue Mar 2 02:03:07 CET 2004 - ro@suse.de
-
-- boot.lvm: root-fs is mounted-rw by boot.rootfsck
-
--------------------------------------------------------------------
-Thu Feb 26 20:14:53 CET 2004 - fehr@suse.de
-
-- skip cdroms and device with zero size on probing
-
--------------------------------------------------------------------
-Wed Feb 4 10:58:46 CET 2004 - fehr@suse.de
-
-- update to new version 2.00.08
-- now lvm2 obsoletes lvm
-
--------------------------------------------------------------------
-Thu Sep 18 13:05:20 CEST 2003 - fehr@suse.de
-
-- fix boot.lvm to cope with LABEL= and UUID= in /etc/fstab
- also check reiser filesystem (#31060)
-
--------------------------------------------------------------------
-Wed Sep 17 16:20:18 CEST 2003 - fehr@suse.de
-
-- update to new version 2.00.07
-
--------------------------------------------------------------------
-Thu Aug 21 10:00:04 CEST 2003 - fehr@suse.de
-
-- update to new version 2.00.06
-
--------------------------------------------------------------------
-Mon Aug 18 17:41:31 CEST 2003 - garloff@suse.de
-
-- (#29083) Add # X-UnitedLinux-Should-Start: boot.scsidev
-
--------------------------------------------------------------------
-Tue Jul 1 16:13:06 CEST 2003 - fehr@suse.de
-
-- created initial version of a SuSE package
-
--------------------------------------------------------------------
diff --git a/device-mapper.spec b/device-mapper.spec
deleted file mode 100644
index 30618a2..0000000
--- a/device-mapper.spec
+++ /dev/null
@@ -1,243 +0,0 @@
-#
-# spec file for package device-mapper
-#
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
-#
-# All modifications and additions to the file contributed by third parties
-# remain the property of their copyright owners, unless otherwise agreed
-# upon. The license for this file, and modifications and additions to the
-# file, is the same license as for the pristine package itself (unless the
-# license for the pristine package is not an Open Source License, in which
-# case the license is the MIT License). An "Open Source License" is a
-# license that conforms to the Open Source Definition (Version 1.9)
-# published by the Open Source Initiative.
-
-# Please submit bugfixes or comments via https://bugs.opensuse.org/
-#
-
-
-%define libname libdevmapper1_03
-%define libname_event libdevmapper-event1_03
-### COMMON-DEF-BEGIN ###
-%define lvm2_version 2.02.180
-%define device_mapper_version 1.02.149
-%define thin_provisioning_version 0.7.0
-### COMMON-DEF-END ###
-Name: device-mapper
-Version: %{device_mapper_version}
-Release: 0
-Summary: Device Mapper Tools
-License: GPL-2.0-or-later AND LGPL-2.1-or-later
-Group: System/Base
-Url: http://www.sourceware.org/lvm2/
-Source: ftp://sources.redhat.com/pub/lvm2/LVM2.%{lvm2_version}.tgz
-Source1: ftp://sources.redhat.com/pub/lvm2/LVM2.%{lvm2_version}.tgz.asc
-Source99: baselibs.conf
-# To detect modprobe during build
-BuildRequires: gcc-c++
-BuildRequires: kmod-compat
-BuildRequires: libaio-devel
-BuildRequires: pkgconfig
-BuildRequires: suse-module-tools
-BuildRequires: thin-provisioning-tools >= %{thin_provisioning_version}
-BuildRequires: pkgconfig(libselinux)
-BuildRequires: pkgconfig(libsepol)
-BuildRequires: pkgconfig(libudev)
-BuildRequires: pkgconfig(systemd)
-Requires: thin-provisioning-tools >= %{thin_provisioning_version}
-Requires(post): coreutils
-BuildRoot: %{_tmppath}/%{name}-%{version}-build
-%{?systemd_requires}
-### COMMON-PATCH-BEGIN ###
-# Upstream patches
-Patch0001: bug-1114113_metadata-prevent-writing-beyond-metadata-area.patch
-Patch0002: bug-1122666_devices-drop-open-error-message.patch
-Patch0003: bug-1137296_pvremove-vgextend-fix-using-device-aliases-with-lvmetad.patch
-Patch0004: bug-1135984_cache-support-no_discard_passdown.patch
-
-# SUSE patches: 1000+ for LVM
-# Never upstream
-Patch1001: cmirrord_remove_date_time_from_compilation.patch
-Patch1002: fate-309425_display-dm-name-for-lv-name.patch
-Patch1003: fate-31841_fsadm-add-support-for-btrfs.patch
-Patch1004: bug-935623_dmeventd-fix-dso-name-wrong-compare.patch
-Patch1005: bsc1080299-detect-clvm-properly.patch
-Patch1006: bug-998893_make_pvscan_service_after_multipathd.patch
-
-#SUSE patches 2000+ for device mapper, udev rules
-Patch2001: bug-1012973_simplify-special-case-for-md-in-69-dm-lvm-metadata.patch
-### COMMON-PATCH-END ###
-
-%description
-Programs and man pages for configuring and using the device mapper.
-
-%prep
-%setup -q -n LVM2.%{lvm2_version}
-### COMMON-PREP-BEGIN ###
-%patch0001 -p1
-%patch0002 -p1
-%patch0003 -p1
-%patch0004 -p1
-%patch1001 -p1
-%patch1002 -p1
-%patch1003 -p1
-%patch1004 -p1
-%patch1005 -p1
-%patch1006 -p1
-%patch2001 -p1
-### COMMON-PREP-END ###
-
-%build
-extra_opts=""
-
-### COMMON-CONFIG-BEGIN ###
-export PATH=$PATH:/sbin:%{_prefix}/sbin
-# Why this messy fix here? someone released a wrong version...
-sed -ie "s/%{device_mapper_version}/1.03.01/g" VERSION_DM
-%configure \
- --enable-dmeventd \
- --enable-cmdlib \
- --enable-udev_rules \
- --enable-udev_sync \
- --with-udev-prefix="%{_prefix}/" \
- --enable-selinux \
- --enable-pkgconfig \
- --with-usrlibdir=%{_libdir} \
- --with-usrsbindir=%{_sbindir} \
- --with-default-dm-run-dir=/run \
- --with-tmpfilesdir=%{_tmpfilesdir} \
- --with-thin=internal \
- --with-device-gid=6 \
- --with-device-mode=0640 \
- --with-device-uid=0 \
- --with-dmeventd-path=%{_sbindir}/dmeventd \
- --with-thin-check=%{_sbindir}/thin_check \
- --with-thin-dump=%{_sbindir}/thin_dump \
- --with-thin-repair=%{_sbindir}/thin_repair \
- $extra_opts
-### COMMON-CONFIG-END ###
-
-%make_build device-mapper
-
-%install
-make DESTDIR=%{buildroot} \
- install_device-mapper \
- install_systemd_units install_systemd_generators
-
-ln -s service %{buildroot}/%{_sbindir}/rcdm-event
-
-# provide 1.02 compat links for the shared libraries
-# this is needed for various binary packages
-ln -s libdevmapper.so.1.03 %{buildroot}/%{_libdir}/libdevmapper.so.1.02
-ln -s libdevmapper-event.so.1.03 %{buildroot}/%{_libdir}/libdevmapper-event.so.1.02
-
-# remove blkd, will be in lvm2 proper
-# without force on purpose to detect changes and fail if it happens
-rm %{buildroot}%{_sbindir}/blkdeactivate
-rm %{buildroot}%{_unitdir}/blk-availability.service
-rm %{buildroot}%{_unitdir}/lvm2-monitor.service
-rm %{buildroot}%{_mandir}/man8/blkdeactivate.8
-rm %{buildroot}%{_mandir}/man8/lvm2-activation-generator.8
-
-# compat symlinks in /sbin remove with Leap 43
-mkdir -p %{buildroot}/sbin
-ln -s %{_sbindir}/dmsetup %{buildroot}/sbin/dmsetup
-
-%pre
-%service_add_pre dm-event.service dm-event.socket
-
-%post
-%service_add_post dm-event.service dm-event.socket
-%{?regenerate_initrd_post}
-
-%posttrans
-%{?regenerate_initrd_posttrans}
-
-%preun
-%service_del_preun dm-event.service dm-event.socket
-
-%postun
-%service_del_postun dm-event.service dm-event.socket
-%{?regenerate_initrd_post}
-
-%files
-%defattr(-,root,root)
-%license COPYING COPYING.LIB
-%doc README
-%doc udev/12-dm-permissions.rules
-/sbin/dmsetup
-%{_sbindir}/dmsetup
-%{_sbindir}/dmeventd
-%{_sbindir}/dmstats
-%{_mandir}/man8/dmstats.8%{ext_man}
-%{_mandir}/man8/dmsetup.8%{ext_man}
-%{_mandir}/man8/dmeventd.8%{ext_man}
-%{_udevrulesdir}/10-dm.rules
-%{_udevrulesdir}/13-dm-disk.rules
-%{_udevrulesdir}/95-dm-notify.rules
-%{_unitdir}/dm-event.socket
-%{_sbindir}/rcdm-event
-%{_unitdir}/dm-event.service
-
-%package -n %{libname}
-Summary: Library for device-mapper
-Group: System/Libraries
-Conflicts: %{name} < %{version}
-
-%description -n %{libname}
-Device mapper main shared library
-
-%files -n %{libname}
-%defattr(-,root,root)
-%{_libdir}/libdevmapper.so.1.03
-%{_libdir}/libdevmapper.so.1.02
-
-%post -n %{libname}
-if [ -f /%{_lib}/libdevmapper.so.1.03 ]; then
- # Special migration - the library is now in %{_libdir}, but up to the point where
- # zypp removes the 'old' device-mapper package, the old library 'wins' the ldloader race
- # resulting in binaries asking for the newer version still getting the old one.
- # This in turn results in funny bugs like boo#1045396
- # Remove /%{_lib}/libdevmapper.so.1.02 - and the run ldconfig
- rm /%{_lib}/libdevmapper.so.1.03
-fi
- /sbin/ldconfig
-
-%postun -n %{libname} -p /sbin/ldconfig
-
-%package -n %{libname_event}
-Summary: Event library for device-mapper
-Group: System/Libraries
-Conflicts: %{name} < %{version}
-
-%description -n %{libname_event}
-Device mapper event daemon shared library
-
-%files -n %{libname_event}
-%defattr(-,root,root)
-%{_libdir}/libdevmapper-event.so.1.03
-%{_libdir}/libdevmapper-event.so.1.02
-
-%post -n %{libname_event} -p /sbin/ldconfig
-%postun -n %{libname_event} -p /sbin/ldconfig
-
-%package devel
-Summary: Development package for the device mapper
-Group: Development/Libraries/C and C++
-Requires: %{libname_event} = %{device_mapper_version}
-Requires: %{libname} = %{device_mapper_version}
-Requires: device-mapper = %{device_mapper_version}
-
-%description devel
-Files needed for software development using the device mapper
-
-%files devel
-%defattr(-,root,root)
-%{_libdir}/libdevmapper.so
-%{_libdir}/libdevmapper-event.so
-%{_includedir}/libdevmapper.h
-%{_includedir}/libdevmapper-event.h
-%{_libdir}/pkgconfig/devmapper.pc
-%{_libdir}/pkgconfig/devmapper-event.pc
-
-%changelog
diff --git a/lvm.conf b/lvm.conf
index 960c885..0503ef1 100644
--- a/lvm.conf
+++ b/lvm.conf
@@ -21,7 +21,6 @@
# N.B. Take care that each setting only appears once if uncommenting
# example settings in this file.
-#hello
# Configuration section config.
# How LVM configuration settings are handled.
@@ -124,7 +123,6 @@ devices {
# then the device is accepted. Be careful mixing 'a' and 'r' patterns,
# as the combination might produce unexpected results (test changes.)
# Run vgscan after changing the filter to regenerate the cache.
- # See the use_lvmetad comment for a special case regarding filters.
#
# Example
# Accept every block device:
@@ -140,36 +138,20 @@ devices {
#
# This configuration option has an automatic default value.
# filter = [ "a|.*/|" ]
- filter = [ "r|/dev/.*/by-path/.*|", "r|/dev/.*/by-id/.*|", "r|/dev/fd.*|", "r|/dev/cdrom|", "a/.*/" ]
+ # Below filter was used in SUSE/openSUSE before lvm2-2.03. It conflicts
+ # with lvm2-2.02.180+, so comment out in lvm2-2.03 release.
+ # filter = [ "r|/dev/.*/by-path/.*|", "r|/dev/.*/by-id/.*|", "r|/dev/fd.*|", "r|/dev/cdrom|", "a/.*/" ]
# Configuration option devices/global_filter.
# Limit the block devices that are used by LVM system components.
# Because devices/filter may be overridden from the command line, it is
- # not suitable for system-wide device filtering, e.g. udev and lvmetad.
+ # not suitable for system-wide device filtering, e.g. udev.
# Use global_filter to hide devices from these LVM system components.
# The syntax is the same as devices/filter. Devices rejected by
# global_filter are not opened by LVM.
# This configuration option has an automatic default value.
# global_filter = [ "a|.*/|" ]
- # Configuration option devices/cache_dir.
- # Directory in which to store the device cache file.
- # The results of filtering are cached on disk to avoid rescanning dud
- # devices (which can take a very long time). By default this cache is
- # stored in a file named .cache. It is safe to delete this file; the
- # tools regenerate it. If obtain_device_list_from_udev is enabled, the
- # list of devices is obtained from udev and any existing .cache file
- # is removed.
- cache_dir = "/etc/lvm/cache"
-
- # Configuration option devices/cache_file_prefix.
- # A prefix used before the .cache file name. See devices/cache_dir.
- cache_file_prefix = ""
-
- # Configuration option devices/write_cache_state.
- # Enable/disable writing the cache file. See devices/cache_dir.
- write_cache_state = 1
-
# Configuration option devices/types.
# List of additional acceptable block device types.
# These are of device type names from /proc/devices, followed by the
@@ -187,6 +169,10 @@ devices {
# present on the system. sysfs must be part of the kernel and mounted.)
sysfs_scan = 1
+ # Configuration option devices/scan_lvs.
+ # Scan LVM LVs for layered PVs.
+ scan_lvs = 0
+
# Configuration option devices/multipath_component_detection.
# Ignore devices that are components of DM multipath devices.
multipath_component_detection = 1
@@ -270,14 +256,6 @@ devices {
# different way, making them a better choice for VG stacking.
ignore_lvm_mirrors = 1
- # Configuration option devices/disable_after_error_count.
- # Number of I/O errors after which a device is skipped.
- # During each LVM operation, errors received from each device are
- # counted. If the counter of a device exceeds the limit set here,
- # no further I/O is sent to that device for the remainder of the
- # operation. Setting this to 0 disables the counters altogether.
- disable_after_error_count = 0
-
# Configuration option devices/require_restorefile_with_uuid.
# Allow use of pvcreate --uuid without requiring --restorefile.
require_restorefile_with_uuid = 1
@@ -314,6 +292,12 @@ devices {
# Enabling this setting allows the VG to be used as usual even with
# uncertain devices.
allow_changes_with_duplicate_pvs = 0
+
+ # Configuration option devices/allow_mixed_block_sizes.
+ # Allow PVs in the same VG with different logical block sizes.
+ # When allowed, the user is responsible to ensure that an LV is
+ # using PVs with matching block sizes when necessary.
+ allow_mixed_block_sizes = 0
}
# Configuration section allocation.
@@ -348,7 +332,7 @@ allocation {
maximise_cling = 1
# Configuration option allocation/use_blkid_wiping.
- # Use blkid to detect existing signatures on new PVs and LVs.
+ # Use blkid to detect and erase existing signatures on new PVs and LVs.
# The blkid library can detect more signatures than the native LVM
# detection code, but may take longer. LVM needs to be compiled with
# blkid wiping support for this setting to apply. LVM native detection
@@ -500,6 +484,154 @@ allocation {
# Default physical extent size in KiB to use for new VGs.
# This configuration option has an automatic default value.
# physical_extent_size = 4096
+
+ # Configuration option allocation/vdo_use_compression.
+ # Enables or disables compression when creating a VDO volume.
+ # Compression may be disabled if necessary to maximize performance
+ # or to speed processing of data that is unlikely to compress.
+ # This configuration option has an automatic default value.
+ # vdo_use_compression = 1
+
+ # Configuration option allocation/vdo_use_deduplication.
+ # Enables or disables deduplication when creating a VDO volume.
+ # Deduplication may be disabled in instances where data is not expected
+ # to have good deduplication rates but compression is still desired.
+ # This configuration option has an automatic default value.
+ # vdo_use_deduplication = 1
+
+ # Configuration option allocation/vdo_use_metadata_hints.
+ # Enables or disables whether VDO volume should tag its latency-critical
+ # writes with the REQ_SYNC flag. Some device mapper targets such as dm-raid5
+ # process writes with this flag at a higher priority.
+ # Default is enabled.
+ # This configuration option has an automatic default value.
+ # vdo_use_metadata_hints = 1
+
+ # Configuration option allocation/vdo_minimum_io_size.
+ # The minimum IO size for VDO volume to accept, in bytes.
+ # Valid values are 512 or 4096. The recommended and default value is 4096.
+ # This configuration option has an automatic default value.
+ # vdo_minimum_io_size = 4096
+
+ # Configuration option allocation/vdo_block_map_cache_size_mb.
+ # Specifies the amount of memory in MiB allocated for caching block map
+ # pages for VDO volume. The value must be a multiple of 4096 and must be
+ # at least 128MiB and less than 16TiB. The cache must be at least 16MiB
+ # per logical thread. Note that there is a memory overhead of 15%.
+ # This configuration option has an automatic default value.
+ # vdo_block_map_cache_size_mb = 128
+
+ # Configuration option allocation/vdo_block_map_period.
+ # The speed with which the block map cache writes out modified block map pages.
+ # A smaller era length is likely to reduce the amount time spent rebuilding,
+ # at the cost of increased block map writes during normal operation.
+ # The maximum and recommended value is 16380; the minimum value is 1.
+ # This configuration option has an automatic default value.
+ # vdo_block_map_period = 16380
+
+ # Configuration option allocation/vdo_check_point_frequency.
+ # The default check point frequency for VDO volume.
+ # This configuration option has an automatic default value.
+ # vdo_check_point_frequency = 0
+
+ # Configuration option allocation/vdo_use_sparse_index.
+ # Enables sparse indexing for VDO volume.
+ # This configuration option has an automatic default value.
+ # vdo_use_sparse_index = 0
+
+ # Configuration option allocation/vdo_index_memory_size_mb.
+ # Specifies the amount of index memory in MiB for VDO volume.
+ # The value must be at least 256MiB and at most 1TiB.
+ # This configuration option has an automatic default value.
+ # vdo_index_memory_size_mb = 256
+
+ # Configuration option allocation/vdo_slab_size_mb.
+ # Specifies the size in MiB of the increment by which a VDO is grown.
+ # Using a smaller size constrains the total maximum physical size
+ # that can be accommodated. Must be a power of two between 128MiB and 32GiB.
+ # This configuration option has an automatic default value.
+ # vdo_slab_size_mb = 2048
+
+ # Configuration option allocation/vdo_ack_threads.
+ # Specifies the number of threads to use for acknowledging
+ # completion of requested VDO I/O operations.
+ # The value must be at in range [0..100].
+ # This configuration option has an automatic default value.
+ # vdo_ack_threads = 1
+
+ # Configuration option allocation/vdo_bio_threads.
+ # Specifies the number of threads to use for submitting I/O
+ # operations to the storage device of VDO volume.
+ # The value must be in range [1..100]
+ # Each additional thread after the first will use an additional 18MiB of RAM,
+ # plus 1.12 MiB of RAM per megabyte of configured read cache size.
+ # This configuration option has an automatic default value.
+ # vdo_bio_threads = 1
+
+ # Configuration option allocation/vdo_bio_rotation.
+ # Specifies the number of I/O operations to enqueue for each bio-submission
+ # thread before directing work to the next. The value must be in range [1..1024].
+ # This configuration option has an automatic default value.
+ # vdo_bio_rotation = 64
+
+ # Configuration option allocation/vdo_cpu_threads.
+ # Specifies the number of threads to use for CPU-intensive work such as
+ # hashing or compression for VDO volume. The value must be in range [1..100]
+ # This configuration option has an automatic default value.
+ # vdo_cpu_threads = 2
+
+ # Configuration option allocation/vdo_hash_zone_threads.
+ # Specifies the number of threads across which to subdivide parts of the VDO
+ # processing based on the hash value computed from the block data.
+ # The value must be at in range [0..100].
+ # vdo_hash_zone_threads, vdo_logical_threads and vdo_physical_threads must be
+ # either all zero or all non-zero.
+ # This configuration option has an automatic default value.
+ # vdo_hash_zone_threads = 1
+
+ # Configuration option allocation/vdo_logical_threads.
+ # Specifies the number of threads across which to subdivide parts of the VDO
+ # processing based on the hash value computed from the block data.
+ # A logical thread count of 9 or more will require explicitly specifying
+ # a sufficiently large block map cache size, as well.
+ # The value must be in range [0..100].
+ # vdo_hash_zone_threads, vdo_logical_threads and vdo_physical_threads must be
+ # either all zero or all non-zero.
+ # This configuration option has an automatic default value.
+ # vdo_logical_threads = 1
+
+ # Configuration option allocation/vdo_physical_threads.
+ # Specifies the number of threads across which to subdivide parts of the VDO
+ # processing based on physical block addresses.
+ # Each additional thread after the first will use an additional 10MiB of RAM.
+ # The value must be in range [0..16].
+ # vdo_hash_zone_threads, vdo_logical_threads and vdo_physical_threads must be
+ # either all zero or all non-zero.
+ # This configuration option has an automatic default value.
+ # vdo_physical_threads = 1
+
+ # Configuration option allocation/vdo_write_policy.
+ # Specifies the write policy:
+ # auto - VDO will check the storage device and determine whether it supports flushes.
+ # If it does, VDO will run in async mode, otherwise it will run in sync mode.
+ # sync - Writes are acknowledged only after data is stably written.
+ # This policy is not supported if the underlying storage is not also synchronous.
+ # async - Writes are acknowledged after data has been cached for writing to stable storage.
+ # Data which has not been flushed is not guaranteed to persist in this mode.
+ # This configuration option has an automatic default value.
+ # vdo_write_policy = "auto"
+
+ # Configuration option allocation/vdo_max_discard.
+ # Specified te maximum size of discard bio accepted, in 4096 byte blocks.
+ # I/O requests to a VDO volume are normally split into 4096-byte blocks,
+ # and processed up to 2048 at a time. However, discard requests to a VDO volume
+ # can be automatically split to a larger size, up to 4096-byte blocks
+ # in a single bio, and are limited to 1500 at a time.
+ # Increasing this value may provide better overall performance, at the cost of
+ # increased latency for the individual discard requests.
+ # The default and minimum is 1. The maximum is UINT_MAX / 4096.
+ # This configuration option has an automatic default value.
+ # vdo_max_discard = 1
}
# Configuration section log.
@@ -614,9 +746,9 @@ log {
# Select log messages by class.
# Some debugging messages are assigned to a class and only appear in
# debug output if the class is listed here. Classes currently
- # available: memory, devices, activation, allocation, lvmetad,
+ # available: memory, devices, io, activation, allocation,
# metadata, cache, locking, lvmpolld. Use "all" to see everything.
- debug_classes = [ "memory", "devices", "activation", "allocation", "lvmetad", "metadata", "cache", "locking", "lvmpolld", "dbus" ]
+ debug_classes = [ "memory", "devices", "io", "activation", "allocation", "metadata", "cache", "locking", "lvmpolld", "dbus" ]
}
# Configuration section backup.
@@ -704,32 +836,6 @@ global {
# the error messages.
activation = 1
- # Configuration option global/fallback_to_lvm1.
- # Try running LVM1 tools if LVM cannot communicate with DM.
- # This option only applies to 2.4 kernels and is provided to help
- # switch between device-mapper kernels and LVM1 kernels. The LVM1
- # tools need to be installed with .lvm1 suffices, e.g. vgscan.lvm1.
- # They will stop working once the lvm2 on-disk metadata format is used.
- # This configuration option has an automatic default value.
- # fallback_to_lvm1 = 1
-
- # Configuration option global/format.
- # The default metadata format that commands should use.
- # The -M 1|2 option overrides this setting.
- #
- # Accepted values:
- # lvm1
- # lvm2
- #
- # This configuration option has an automatic default value.
- # format = "lvm2"
-
- # Configuration option global/format_libraries.
- # Shared libraries that process different metadata formats.
- # If support for LVM1 metadata was compiled as a shared library use
- # format_libraries = "liblvm2format1.so"
- # This configuration option does not have a default value defined.
-
# Configuration option global/segment_libraries.
# This configuration option does not have a default value defined.
@@ -742,57 +848,10 @@ global {
# Location of /etc system configuration directory.
etc = "/etc"
- # Configuration option global/locking_type.
- # Type of locking to use.
- #
- # Accepted values:
- # 0
- # Turns off locking. Warning: this risks metadata corruption if
- # commands run concurrently.
- # 1
- # LVM uses local file-based locking, the standard mode.
- # 2
- # LVM uses the external shared library locking_library.
- # 3
- # LVM uses built-in clustered locking with clvmd.
- # This is incompatible with lvmetad. If use_lvmetad is enabled,
- # LVM prints a warning and disables lvmetad use.
- # 4
- # LVM uses read-only locking which forbids any operations that
- # might change metadata.
- # 5
- # Offers dummy locking for tools that do not need any locks.
- # You should not need to set this directly; the tools will select
- # when to use it instead of the configured locking_type.
- # Do not use lvmetad or the kernel device-mapper driver with this
- # locking type. It is used by the --readonly option that offers
- # read-only access to Volume Group metadata that cannot be locked
- # safely because it belongs to an inaccessible domain and might be
- # in use, for example a virtual machine image or a disk that is
- # shared by a clustered machine.
- #
- locking_type = 1
-
# Configuration option global/wait_for_locks.
# When disabled, fail if a lock request would block.
wait_for_locks = 1
- # Configuration option global/fallback_to_clustered_locking.
- # Attempt to use built-in cluster locking if locking_type 2 fails.
- # If using external locking (type 2) and initialisation fails, with
- # this enabled, an attempt will be made to use the built-in clustered
- # locking. Disable this if using a customised locking_library.
- fallback_to_clustered_locking = 1
-
- # Configuration option global/fallback_to_local_locking.
- # Use locking_type 1 (local) if locking_type 2 or 3 fail.
- # If an attempt to initialise type 2 or type 3 locking failed, perhaps
- # because cluster components such as clvmd are not running, with this
- # enabled, an attempt will be made to use local file-based locking
- # (type 1). If this succeeds, only commands against local VGs will
- # proceed. VGs marked as clustered will be ignored.
- fallback_to_local_locking = 1
-
# Configuration option global/locking_dir.
# Directory to use for LVM command file locks.
# Local non-LV directory that holds file-based locks while commands are
@@ -813,24 +872,12 @@ global {
# Search this directory first for shared libraries.
# This configuration option does not have a default value defined.
- # Configuration option global/locking_library.
- # The external locking library to use for locking_type 2.
- # This configuration option has an automatic default value.
- # locking_library = "liblvm2clusterlock.so"
-
# Configuration option global/abort_on_internal_errors.
# Abort a command that encounters an internal error.
# Treat any internal errors as fatal errors, aborting the process that
# encountered the internal error. Please only enable for debugging.
abort_on_internal_errors = 0
- # Configuration option global/detect_internal_vg_cache_corruption.
- # Internal verification of VG structures.
- # Check if CRC matches when a parsed VG is used multiple times. This
- # is useful to catch unexpected changes to cached VG structures.
- # Please only enable for debugging.
- detect_internal_vg_cache_corruption = 0
-
# Configuration option global/metadata_read_only.
# No operations that change on-disk metadata are permitted.
# Additionally, read-only commands that encounter metadata in need of
@@ -865,6 +912,17 @@ global {
#
mirror_segtype_default = "raid1"
+ # Configuration option global/support_mirrored_mirror_log.
+ # Configuration option global/support_mirrored_mirror_log.
+ # Enable mirrored 'mirror' log type for testing.
+ #
+ # This type is deprecated to create or convert to but can
+ # be enabled to test that activation of existing mirrored
+ # logs and conversion to disk/core works.
+ #
+ # Not supported for regular operation!
+ support_mirrored_mirror_log = 0
+
# Configuration option global/raid10_segtype_default.
# The segment type used by the -i -m combination.
# The --type raid10|mirror option overrides this setting.
@@ -913,41 +971,20 @@ global {
# This configuration option has an automatic default value.
# lvdisplay_shows_full_device_path = 0
- # Configuration option global/use_lvmetad.
- # Use lvmetad to cache metadata and reduce disk scanning.
- # When enabled (and running), lvmetad provides LVM commands with VG
- # metadata and PV state. LVM commands then avoid reading this
- # information from disks which can be slow. When disabled (or not
- # running), LVM commands fall back to scanning disks to obtain VG
- # metadata. lvmetad is kept updated via udev rules which must be set
- # up for LVM to work correctly. (The udev rules should be installed
- # by default.) Without a proper udev setup, changes in the system's
- # block device configuration will be unknown to LVM, and ignored
- # until a manual 'pvscan --cache' is run. If lvmetad was running
- # while use_lvmetad was disabled, it must be stopped, use_lvmetad
- # enabled, and then started. When using lvmetad, LV activation is
- # switched to an automatic, event-based mode. In this mode, LVs are
- # activated based on incoming udev events that inform lvmetad when
- # PVs appear on the system. When a VG is complete (all PVs present),
- # it is auto-activated. The auto_activation_volume_list setting
- # controls which LVs are auto-activated (all by default.)
- # When lvmetad is updated (automatically by udev events, or directly
- # by pvscan --cache), devices/filter is ignored and all devices are
- # scanned by default. lvmetad always keeps unfiltered information
- # which is provided to LVM commands. Each LVM command then filters
- # based on devices/filter. This does not apply to other, non-regexp,
- # filtering settings: component filters such as multipath and MD
- # are checked during pvscan --cache. To filter a device and prevent
- # scanning from the LVM system entirely, including lvmetad, use
- # devices/global_filter.
- use_lvmetad = 1
+ # Configuration option global/event_activation.
+ # Activate LVs based on system-generated device events.
+ # When a device appears on the system, a system-generated event runs
+ # the pvscan command to activate LVs if the new PV completes the VG.
+ # Use auto_activation_volume_list to select which LVs should be
+ # activated from these events (the default is all.)
+ # When event_activation is disabled, the system will generally run
+ # a direct activation command to activate LVs in complete VGs.
+ event_activation = 1
- # Configuration option global/lvmetad_update_wait_time.
- # Number of seconds a command will wait for lvmetad update to finish.
- # After waiting for this period, a command will not use lvmetad, and
- # will revert to disk scanning.
+ # Configuration option global/use_aio.
+ # Use async I/O when reading and writing devices.
# This configuration option has an automatic default value.
- # lvmetad_update_wait_time = 10
+ # use_aio = 1
# Configuration option global/use_lvmlockd.
# Use lvmlockd for locking among hosts using LVM on shared storage.
@@ -1073,6 +1110,17 @@ global {
# This configuration option has an automatic default value.
# cache_repair_options = [ "" ]
+ # Configuration option global/vdo_format_executable.
+ # The full path to the vdoformat command.
+ # LVM uses this command to initial data volume for VDO type logical volume
+ # This configuration option has an automatic default value.
+ # vdo_format_executable = "/usr/bin/vdoformat"
+
+ # Configuration option global/vdo_format_options.
+ # List of options passed added to standard vdoformat command.
+ # This configuration option has an automatic default value.
+ # vdo_format_options = [ "" ]
+
# Configuration option global/fsadm_executable.
# The full path to the fsadm command.
# LVM uses this command to help with lvresize -r operations.
@@ -1446,6 +1494,33 @@ activation {
#
thin_pool_autoextend_percent = 20
+ # Configuration option activation/vdo_pool_autoextend_threshold.
+ # Auto-extend a VDO pool when its usage exceeds this percent.
+ # Setting this to 100 disables automatic extension.
+ # The minimum value is 50 (a smaller value is treated as 50.)
+ # Also see vdo_pool_autoextend_percent.
+ # Automatic extension requires dmeventd to be monitoring the LV.
+ #
+ # Example
+ # Using 70% autoextend threshold and 20% autoextend size, when a 10G
+ # VDO pool exceeds 7G, it is extended to 12G, and when it exceeds
+ # 8.4G, it is extended to 14.4G:
+ # vdo_pool_autoextend_threshold = 70
+ #
+ vdo_pool_autoextend_threshold = 100
+
+ # Configuration option activation/vdo_pool_autoextend_percent.
+ # Auto-extending a VDO pool adds this percent extra space.
+ # The amount of additional space added to a VDO pool is this
+ # percent of its current size.
+ #
+ # Example
+ # Using 70% autoextend threshold and 20% autoextend size, when a 10G
+ # VDO pool exceeds 7G, it is extended to 12G, and when it exceeds
+ # 8.4G, it is extended to 14.4G:
+ # This configuration option has an automatic default value.
+ # vdo_pool_autoextend_percent = 20
+
# Configuration option activation/mlock_filter.
# Do not mlock these memory areas.
# While activating devices, I/O to devices being (re)configured is
@@ -1612,24 +1687,6 @@ activation {
# This configuration option is advanced.
# This configuration option has an automatic default value.
# stripesize = 64
-
- # Configuration option metadata/dirs.
- # Directories holding live copies of text format metadata.
- # These directories must not be on logical volumes!
- # It's possible to use LVM with a couple of directories here,
- # preferably on different (non-LV) filesystems, and with no other
- # on-disk metadata (pvmetadatacopies = 0). Or this can be in addition
- # to on-disk metadata areas. The feature was originally added to
- # simplify testing and is not supported under low memory situations -
- # the machine could lock up. Never edit any files in these directories
- # by hand unless you are absolutely sure you know what you are doing!
- # Use the supplied toolset to make changes (e.g. vgcfgrestore).
- #
- # Example
- # dirs = [ "/etc/lvm/metadata", "/mnt/disk2/lvm/metadata2" ]
- #
- # This configuration option is advanced.
- # This configuration option does not have a default value defined.
# }
# Configuration section report.
@@ -2080,6 +2137,23 @@ dmeventd {
# This configuration option has an automatic default value.
# thin_command = "lvm lvextend --use-policies"
+ # Configuration option dmeventd/vdo_library.
+ # The library dmeventd uses when monitoring a VDO pool device.
+ # libdevmapper-event-lvm2vdo.so monitors the filling of a pool
+ # and emits a warning through syslog when the usage exceeds 80%. The
+ # warning is repeated when 85%, 90% and 95% of the pool is filled.
+ # This configuration option has an automatic default value.
+ # vdo_library = "libdevmapper-event-lvm2vdo.so"
+
+ # Configuration option dmeventd/vdo_command.
+ # The plugin runs command with each 5% increment when VDO pool volume
+ # gets above 50%.
+ # Command which starts with 'lvm ' prefix is internal lvm command.
+ # You can write your own handler to customise behaviour in more details.
+ # User handler is specified with the full path starting with '/'.
+ # This configuration option has an automatic default value.
+ # vdo_command = "lvm lvextend --use-policies"
+
# Configuration option dmeventd/executable.
# The full path to the dmeventd binary.
# This configuration option has an automatic default value.
diff --git a/lvm2-clvm.changes b/lvm2-clvm.changes
deleted file mode 100644
index 32b56e9..0000000
--- a/lvm2-clvm.changes
+++ /dev/null
@@ -1,2204 +0,0 @@
--------------------------------------------------------------------
-Tue Jul 9 10:00:05 UTC 2019 - ghe@suse.com
-
-- Fix unknown feature in status message (bsc#1135984)
- + bug-1135984_cache-support-no_discard_passdown.patch
-
--------------------------------------------------------------------
-Thu Jun 27 02:53:03 UTC 2019 - heming.zhao@suse.com
-
-- Fix using device aliases with lvmetad (bsc#1137296)
- + bug-1137296_pvremove-vgextend-fix-using-device-aliases-with-lvmetad.patch
-
--------------------------------------------------------------------
-Tue Apr 30 10:20:05 UTC 2019 - ghe@suse.com
-
-- Fix devices drop open error message (bsc#1122666)
- + bug-1122666_devices-drop-open-error-message.patch
-
--------------------------------------------------------------------
-Tue Mar 19 12:02:02 UTC 2019 - Martin Liška
-
-- Use %make_build in order to provide verbose output.
-
--------------------------------------------------------------------
-Fri Feb 1 08:20:15 UTC 2019 - ghe@suse.com
-
-- Disable the LVM lock daemon using sanlock, in order to avoid the
- dependence on sanlock related packages (bsc#1121382)
-
--------------------------------------------------------------------
-Mon Jan 14 14:23:52 CET 2019 - kukuk@suse.de
-
-- Use %license instead of %doc [bsc#1082318]
-
--------------------------------------------------------------------
-Mon Nov 5 08:10:05 UTC 2018 - ghe@suse.com
-
-- Prevent writing beyond metadata area (bsc#1114113)
- + bug-1114113_metadata-prevent-writing-beyond-metadata-area.patch
-
--------------------------------------------------------------------
-Wed Aug 29 10:20:30 UTC 2018 - ghe@suse.com
-
-- Fix lvm2 activation issue when used on top of multipath
- bsc#998893
- + bug-998893_make_pvscan_service_after_multipathd.patch
-
--------------------------------------------------------------------
-Mon Jul 23 11:45:20 UTC 2018 - ghe@suse.com
-
-- Update to LVM2.2.02.180
- Never send any discard ioctl with test mode.
- Fix thin-pool alloc which needs same PV for data and metadata.
- Extend list of non-memlocked areas with newly linked libs.
- Enhance vgcfgrestore to check for active LVs in restored VG.
- lvconvert: provide possible layouts between linear and striped/raid
- Fix unmonitoring of merging snapshots.
- Add missing -l description in fsadm man page.
- Cache can uses metadata format 2 with cleaner policy.
- Avoid showing internal error in lvs output or pvmoved LVs.
- Fix check if resized PV can also fit metadata area.
- Reopen devices RDWR only before writing to avoid udev issues.
- Change pvresize output confusing when no resize took place.
- Fix lvmetad hanging on shutdown.
- Fix mem leak in clvmd and more coverity issues.
- Fix that pvmove does not work (bsc#1080299)
-- Drop patches that have been merged upstream
- - fate-323203_lvmlockd-add-lockopt-values-for-skipping-selected-lo.patch
- - lvm2-69-dm-lvm-metad.rules-explicit-pvscan-rule.patch
- - lvm2-69-dm-lvm-metad.rules-set-systemd-vars-on-chang.patch
- - bug-1095960_dev_io-no-discard-in-testmode.patch
-- Refresh patches
- + bsc1080299-detect-clvm-properly.patch
- + bug-950089_test-fix-lvm2-testsuite-build-error.patch
-- Update spec files
- Fix BuildRequires package name for modprobe (bsc#1102668)
- Fix cmirrord LV creation/activation failure (bsc#1091863)
-- Fix building error in OBS due to the script interpreter
- + tests-specify-python3-as-the-script-interpreter.patch
-
--------------------------------------------------------------------
-Wed Jul 18 11:33:30 UTC 2018 - ghe@suse.com
-
-- Fix issuing discard in test mode (bsc#1095960)
- + bug-1095960_dev_io-no-discard-in-testmode.patch
-
--------------------------------------------------------------------
-Tue May 29 10:45:30 UTC 2018 - ghe@suse.com
-
-- Fix the wrong filter for the cdrom device in /etc/lvm/lvm.conf
- (bsc#1081530)
-
--------------------------------------------------------------------
-Thu Apr 19 10:59:59 UTC 2018 - mwilck@suse.com
-
-- Fix handling of udev CHANGE events with systemd (bsc#1067312)
- + lvm2-69-dm-lvm-metad.rules-explicit-pvscan-rule.patch
- + lvm2-69-dm-lvm-metad.rules-set-systemd-vars-on-chang.patch
-
--------------------------------------------------------------------
-Mon Feb 12 09:01:29 UTC 2018 - tchvatal@suse.com
-
-- Fix detection of clvm that happens on compile time based on
- CLVM_PIDFILE, as we determine these features on runtime
- bsc#1080299:
- + bsc1080299-detect-clvm-properly.patch
-
--------------------------------------------------------------------
-Tue Jan 16 11:53:36 UTC 2018 - zren@suse.com
-
-- clvmd: try to refresh device cache on the first failure
- (bsc#978055, bsc#1076042)
- + bug-978055_clvmd-try-to-refresh-device-cache-on-the-first-failu.patch
-
--------------------------------------------------------------------
-Wed Jan 10 10:41:45 UTC 2018 - zren@suse.com
-
-- lvmlockd: add lockopt values for skipping selected locks (fate#323203)
- + fate-323203_lvmlockd-add-lockopt-values-for-skipping-selected-lo.patch
-
--------------------------------------------------------------------
-Tue Dec 19 07:35:11 UTC 2017 - zren@suse.com
-
-- device-mapper.spec: fix wrong replacement of DM_VERSION (bsc#1072524)
-- Fixes failure of some testcases caused by nc behavior change (bsc#1072624)
- + bug-1072624_test-lvmetad_dump-always-timed-out-when-using-nc.patch
-- Refreshed fate-31841_fsadm-add-support-for-btrfs.patch
-- Update to LVM2.2.02.177
- When writing text metadata content, use complete 4096 byte blocks.
- Change text format metadata alignment from 512 to 4096 bytes.
- When writing metadata, consistently skip mdas marked as failed.
- Refactor and adjust text format metadata alignment calculation.
- Ensure _node_send_message always uses clean status of thin pool.
- Fix lvmlockd to use pool lock when accessing _tmeta volume.
- Report expected sanlock_convert errors only when retries fail.
- Avoid blocking in sanlock_convert on SH to EX lock conversion.
- Deactivate missing raid LV legs (_rimage_X-missing_Y_Z) on decativation.
- Categorise I/O with reason annotations in debug messages.
- Allow extending of raid LVs created with --nosync after a failed repair.
- Command will lock memory only when suspending volumes.
- Merge segments when pvmove is finished.
- Activation code for pvmove automatically discovers holding LVs for resume.
- Make a pvmove LV locking holder.
- Do not change critical section counter on resume path without real resume.
- Enhance activation code to automatically suspend pvmove participants.
- Prevent conversion of thin volumes to snapshot origin when lvmlockd is used.
- Add support for pvmove of cache and snapshot origins.
- Avoid using precommitted metadata for suspending pvmove tree.
- Deactivate activated LVs on error path when pvmove activation fails.
- Add "io" to log/debug_classes for logging low-level I/O.
- Avoid importing persistent filter in vgscan/pvscan/vgrename.
- Fix memleak of string buffer when vgcfgbackup runs in secure mode.
- Do not print error when clvmd cannot find running clvmd.
- Prevent start of new merge of snapshot if origin is already being merged.
- Fix offered type for raid6_n_6 to raid5 conversion (raid5_n).
- Deactivate sub LVs when removing unused cache-pool.
- Do not take backup with suspended devices.
-
--------------------------------------------------------------------
-Tue Nov 21 09:29:02 UTC 2017 - zren@suse.com
-
-- Update to LVM2.2.02.176:
- Keep Install section only in lvm2-{lvmetad,lvmpolld}.socket systemd unit.
- Fix segfault in lvm_pv_remove in liblvm. (2.02.173)
- Do not allow storing VG metadata with LV without any segment.
- Fix printed message when thin snapshot was already merged.
- Remove created spare LV when creation of thin-pool failed.
- Avoid reading ignored metadata when mda gets used again.
- Fix detection of moved PVs in vgsplit. (2.02.175)
- Ignore --stripes/--stripesize on RAID takeover
- Improve used paths for generated systemd units and init shells.
- Disallow creation of snapshot of mirror/raid subLV (was never supported).
- Fix regression in more advanced vgname extraction in lvconvert (2.02.169).
- Allow lvcreate to be used for caching of _tdata LV.
- Avoid internal error when resizing cache type _tdata LV (not yet supported).
- Show original converted names when lvconverting LV to pool volume.
- Move lib code used only by liblvm into metadata-liblvm.c.
- Distinguish between device not found and excluded by filter.
- Monitor external origin LVs.
- Remove the replicator code, including configure --with-replicators.
- Allow lvcreate --type mirror to work with 100%FREE.
- Improve selection of resource name for complex volume activation lock.
- Avoid cutting first character of resource name for activation lock.
- Support for encrypted devices in fsadm.
- Improve thin pool overprovisioning and repair warning messages.
- Fix incorrect adjustment of region size on striped RaidLVs.
-- Drop: bug-960044_lvm2-lvmetad.service-add-Also-lvm2-lvmetad.socket.patch
-- Refresh: fate-31841_fsadm-add-support-for-btrfs.patch
-
--------------------------------------------------------------------
-Thu Nov 2 12:48:23 UTC 2017 - zren@suse.com
-
-- Re-add a strict requires on sanlock, fate#323203
-
--------------------------------------------------------------------
-Mon Oct 23 07:50:33 UTC 2017 - zren@suse.com
-
-- Update to LVM2.2.02.175
-- Use week dependency for lvm2-lockd on libdlm and sanlock
-- Rename/refresh patches:
- - display-dm-name-for-lv-name.diff to fate-309425_display-dm-name-for-lv-name.patch
- - fsadm-add-support-for-btrfs.patch to fate-31841_fsadm-add-support-for-btrfs.patch
- - dmeventd-fix-dso-name-wrong-compare.patch to bug-935623_dmeventd-fix-dso-name-wrong-compare.patch
- - lvm2-lvmetad.service-add-Also-lvm2-lvmetad.socket.patch to bug-960044_lvm2-lvmetad.service-add-Also-lvm2-lvmetad.socket.patch
- - simplify-special-case-for-md-in-69-dm-lvm-metadata.patch to bug-1012973_simplify-special-case-for-md-in-69-dm-lvm-metadata.patch
- - lvm2-testsuite.patch to bug-950089_test-fix-lvm2-testsuite-build-error.patch
-
--------------------------------------------------------------------
-Thu Sep 14 09:51:18 UTC 2017 - zren@suse.com
-
-- Drop resource agents for clvmd and cmirror (bsc#1058680)
- - clvmd.ocf
- - cmirrord.ocf
-- Drop all patches for cmirror (bsc#1058661)
- - cluster_support_mirrord_log.diff
- - cmirrord_improvment_performance.patch
- - lvconvert-cluster-mirrored-disk-failed.patch
- - improve-mirror-legs-on-different-tag-pvs.patch
- - make-mirror-legs-on-different-tag-pvs.patch
- - use-mirrortype-asdefault-whenclvmdrunning.patch
-
--------------------------------------------------------------------
-Fri Aug 18 09:53:39 UTC 2017 - mwilck@suse.com
-
-- Dropped udev rule patches (bsc#1054363)
- * dropped udev_rules-update.diff
- * dropped device-mapper-dmsetup-export.patch
- * dropped udev-Check-for-DM_NR_VALID_PATHS.patch
- * dropped Import-ID_FS_XXX-variables-bnc909358.patch
- * dropped 69-dm-lvm-metad.rules-Do-not-process-rules-for-multi.patch
-
--------------------------------------------------------------------
-Tue Aug 1 05:59:29 UTC 2017 - zren@suse.com
-
-- Dropped several not-upstreamed patches, some of them neither have
- history reference nor patch header, some were temporary workaround
- fix.
- - device-mapper-gcc-warnings.patch
- - device-mapper-type_punning.diff
- - fix-closedown-before-thread-finish.patch
- - libdm-iface-not-output-error-message-inside-retry-loop.patch
- - pvcreate-enhance-the-error-message.patch
- - pvmove_support_clustered_vg.diff
- - version-plugins-in-libdir.patch
-
--------------------------------------------------------------------
-Tue Jul 25 13:48:00 UTC 2017 - zren@suse.com
-
-- Update to LVM2.2.02.173
-- Sync our lvm.conf with V2.02.173
-
--------------------------------------------------------------------
-Thu Jul 13 13:09:35 UTC 2017 - tchvatal@suse.com
-
-- Require device-mapper-devel rather than recommend. It is really
- needed (the .h files are required by the lvm2app and lvm2cmd)
-
--------------------------------------------------------------------
-Thu Jul 6 10:18:09 UTC 2017 - zren@suse.com
-
-- Don't create symlink for invisible device like thin-pool (bsc#1046591)
- * drop 10-dm.rules-Reset-state-variable-for-spurious-events.patch
-
--------------------------------------------------------------------
-Tue Jul 4 10:24:40 UTC 2017 - zren@suse.com
-
-- Update to LVM2.2.02.172
-- Cleanup spec file, and refresh patches
- * removed device-mapper-link.patch
- * removed bug-1033691_tests-missed-to-export-lvm-binary-for-fsadm.patch
- * removed Makefile-skip-compliling-daemons-lvmlockd-directory.patch
- * added bug-1037309_Makefile-skip-compliling-daemons-lvmlockd-directory.patch
-
--------------------------------------------------------------------
-Thu Jun 29 16:38:05 UTC 2017 - dimstar@opensuse.org
-
-- Fix zypper update issue with device-mapper package, see bsc#1045396
-
--------------------------------------------------------------------
-Sat Jun 17 16:50:53 UTC 2017 - zren@suse.com
-
-- Backport fix for lvresize-full.sh failed, see bsc#1033691
- + bug-1033691_tests-missed-to-export-lvm-binary-for-fsadm.patch
-
--------------------------------------------------------------------
-Sat Jun 17 14:56:58 UTC 2017 - zren@suse.com
-
-- Fix test failures about read ahead issue, see bsc#1043040
- + bug-1043040_test-fix-read-ahead-issues-in-test-scripts.patch
-- Reorder the patches to put them into the right groups
-
--------------------------------------------------------------------
-Fri Jun 9 19:27:45 UTC 2017 - kukuk@suse.com
-
-- Don't package dynamic directories in /run
-
--------------------------------------------------------------------
-Wed May 17 08:21:27 UTC 2017 - zren@suse.com
-
-- Add lvmlockd-related configuration items in lvm.conf, fate#323203
-
--------------------------------------------------------------------
-Tue May 16 07:45:25 UTC 2017 - zren@suse.com
-
-- Fix compiling issue of lvmlockd, bsc#1037309
- + Makefile-skip-compliling-daemons-lvmlockd-directory.patch
-
--------------------------------------------------------------------
-Fri May 5 11:33:28 UTC 2017 - tchvatal@suse.com
-
-- Remove comments breaking scriptlets:
- * warning: %postun(libdevmapper1_03-1.02.137-5.1.x86_64) scriptlet failed
-
--------------------------------------------------------------------
-Wed May 3 09:01:42 UTC 2017 - zren@suse.com
-
-- This patch has been dropped since SLE12 (bsc#952300)
- * removed sys_mount_instead_linux_fs.diff
-- Drop obsolete patches:
- * removed improve_probing.diff (bsc#49657)
- * removed no-inc-audit.diff
- * removed suppress_format1_size_warning.diff
-- Add more bug/fate references, and reorder the patches accordingly
-
--------------------------------------------------------------------
-Tue Apr 25 12:00:23 UTC 2017 - zren@suse.com
-
-- Add check_pv_device_sizes option to check PV and disk sizes
- bsc#999878
-
--------------------------------------------------------------------
-Mon Apr 24 17:08:34 UTC 2017 - arvidjaar@gmail.com
-
-- BuildRequire modutils so build script detects modprobe and module
- autoloading works again (boo#983221)
-
--------------------------------------------------------------------
-Tue Apr 18 11:07:01 UTC 2017 - tchvatal@suse.com
-
-- Update to 2.02.170:
- * Few smal fixes around; obsoleted 169 release that was removed
- from mirrors
-- Refresh patch:
- * display-dm-name-for-lv-name.diff
-
--------------------------------------------------------------------
-Wed Apr 12 01:33:15 UTC 2017 - zren@suse.com
-
-- Update device mapper version to 1.02.138, see WHATS_NEW_DM for
- detailed changelogs
- * Drop obsolete lvmchange files accordingly
-- Refresh libdm-iface-not-output-error-message-inside-retry-loop.patch
-- Refresh make-mirror-legs-on-different-tag-pvs.patch
-- device-mapper-dmsetup-export.patch
-
--------------------------------------------------------------------
-Mon Apr 10 23:08:45 UTC 2017 - jnelson-suse@jamponi.net
-
-- Version update to 2.02.169 release, see WHATS_NEW and WHATS_NEW_DM
- files for detailed changelogs
-
--------------------------------------------------------------------
-Mon Apr 10 10:41:02 UTC 2017 - tchvatal@suse.com
-
-- Split configure options to have one per line
-- Pass over with spec-cleaner
-- Enable internal cache
-- Enable lvmpolld
-
--------------------------------------------------------------------
-Mon Apr 10 07:41:10 UTC 2017 - zren@suse.com
-
-- Add 'lvm2-lockd' subpackage, fate#323203 to lvm2-clvm to not pull
- corosync and other deps to the core lvm2 package
-
--------------------------------------------------------------------
-Fri Feb 24 10:57:16 UTC 2017 - zren@suse.com
-
-- Improve the layout and readability of spec files
- * Place subpackages' sections at the bottom of spec file, making
- the layout more reasonable: 1. main package's spec sections are
- contiguous without a break; 2. subpackage's spec spections can
- also be placed together.
- * Get rid of wild-card usage in %files section; spec file is a
- perfect place for packager to know what files are exactly delivered
- with each RPMs; staring at wild-card doesn't give much information.
- * Put bsc#xxx at previous line of each SUSE patch at my best, some
- are still missing.
-
--------------------------------------------------------------------
-Thu Feb 23 06:27:55 UTC 2017 - zren@suse.com
-
-- Enable lvmetad in sync with SLE
-
--------------------------------------------------------------------
-Wed Feb 22 11:25:01 UTC 2017 - zren@suse.com
-
-- Add systemid feature
- * update lvm.conf accordingly
- * replace whitespaces with tab in lvm.conf
-
--------------------------------------------------------------------
-Wed Feb 22 10:43:38 UTC 2017 - zren@suse.com
-
-- Fix several issues about clvmd/cmorriord RAs (bsc#1023283,
- bsc#1025560)
- * deal with time values passed down with time units
- * make correct "return code"
- * fix format issue that tab messes up with spaces
-
--------------------------------------------------------------------
-Wed Feb 22 06:39:27 UTC 2017 - zren@suse.com
-
-- udev: simplify special-case for md in 69-dm-lvm-metadata.rules
- * fix regression of bsc#1012973
- * drop remove-special-case-for-md-in-69-dm-lvm-metadata.rul.patch
- * add simplify-special-case-for-md-in-69-dm-lvm-metadata.patch
-
--------------------------------------------------------------------
-Fri Jan 20 09:46:27 UTC 2017 - tchvatal@suse.com
-
-- Remove special case for md (bsc#1012973)
- * remove-special-case-for-md-in-69-dm-lvm-metadata.rul.patch
-
--------------------------------------------------------------------
-Tue Jan 10 09:25:17 UTC 2017 - zlliu@suse.com
-
-- add a new test package named lvm2-testsuite bnc#950089
- * lvm2-testsuite.patch
-
--------------------------------------------------------------------
-Wed Dec 28 11:08:23 UTC 2016 - tchvatal@suse.com
-
-- Version update to 2.02.168 release, see WHATS_NEW and WHATS_NEW_DM
- files for detailed changelogs
- * Refresh patch cluster_support_mirrord_log.diff
-
--------------------------------------------------------------------
-Wed Dec 28 10:58:29 UTC 2016 - zlliu@suse.com
-
-- fix bsc#1015357 about blkid_wiping printed warning.
- * Add dependency on pkgconfig(blkid)
-
--------------------------------------------------------------------
-Fri Sep 9 09:24:19 UTC 2016 - tchvatal@suse.com
-
-- This is sync commit from Leap/SLE12 only
-- Add patch pvcreate-enhance-the-error-message.patch bsc#960744
-- Modify GPL-2.0 to GPL-2.0+ and LGPL-2.1 to LGPL-2.1+ to avoid
- license conflict with thin-provisioning-tools which is using GPL-3.0
-- Also contains fix for bsc#969310
-- Fix clvmd.ocf and cmirrord to remove "-d" option for cmirrod
- (bsc#971334)
-- Fix clvmd.ocf to add lvmconf --enable-cluster before start daemon
- when locking_type is not 3 or use_lvmetad is 1 in setting
- (bsc#970439)
-- Modified spec to enable blkid-wiping (fate#319908)
-- Fix clvmd binary not found in case that users still use RA from
- ocf:lvm2:clvm (bsc#980200)
- Add sbindir=$HA_SBIN_DIR for clvmd.ocf and cmirrord.ocf
-- The bsc#979635 wnd bsc#991181 as fixed in past thanks to proper /usr
- migration code
-- Modified raid10_segtype_default from "mirror" to "raid10"(bsc#982329)
-- Remove lvm2-clvmd/cmirrord.service and related activation services
- from %service_add _pre/post/preun/postun because we start clvmd
- /clmirrord and activate via pacemaker and RA. (bsc#980296)
-- Lvchange improve refresh by trying to deactivate snapshot thinLV
- in case it's preventing merge process change integrated upstream.
- (bsc#984321)
-- Fixed in past bsc#992843
-- Fixed by upstream bsc#984321
-- Fixed by upstream bsc#970943
-- 69-dm-lvm-metad.rules: Do not process rules for multipath
- devices (bsc#bsc#990538, bsc#986734)
- Add: 69-dm-lvm-metad.rules-Do-not-process-rules-for-multi.patch
-- Rewrite patches to include patch header:
- * 10-dm.rules-Reset-state-variable-for-spurious-events.patch
- * device-mapper-link
- * device-mapper-type_punning.diff
- * udev_rules-update.diff
-- Sync also lvm.conf
-
--------------------------------------------------------------------
-Fri Sep 2 08:23:06 UTC 2016 - tchvatal@suse.com
-
-- Update to 2.02.164 release, WHATS_NEW for changelog
- * Mostly because the old tarball was no longer available
- * Refresh fuzz on patch:
- + make-mirror-legs-on-different-tag-pvs.patch
- + cluster_support_mirrord_log.diff
-- Update patch to use correct api:
- + make-mirror-legs-on-different-tag-pvs.patch
-
--------------------------------------------------------------------
-Fri Jul 8 13:43:41 UTC 2016 - tchvatal@suse.com
-
-- Update to 2.02.160 release, read WHATS_NEW for detailed log.
- * Most notable is lvconvert refactor/enhancements
- * Refresh patch:
- + cluster_support_mirrord_log.diff
-
--------------------------------------------------------------------
-Tue Jun 7 12:08:24 UTC 2016 - tchvatal@suse.com
-
-- Add thin-provisioning-tools to deps to fix configure warnings
-
--------------------------------------------------------------------
-Tue Jun 7 11:45:56 UTC 2016 - tchvatal@suse.com
-
-- Do not run initrd regenerating twice in post
-
--------------------------------------------------------------------
-Tue Jun 7 11:40:41 UTC 2016 - tchvatal@suse.com
-
-- Update to 2.02.155 release, read WHATS_NEW for detailed log.
- * Mostly few bugfixes around caching
-- Refresh patch pvmove_support_clustered_vg.diff
-
--------------------------------------------------------------------
-Thu May 19 12:07:09 UTC 2016 - tchvatal@suse.com
-
-- Add compat symlinks for binaries to /sbin/ to avoid errors on
- hardcoded systems, obsolete them with leap 43
-
--------------------------------------------------------------------
-Thu May 12 08:12:54 UTC 2016 - tchvatal@suse.com
-
-- Add conflicts on unsplit packages to allow smooth upgrade path
- Also do the conflict properly in baselibs.conf
-
--------------------------------------------------------------------
-Wed May 11 07:54:19 UTC 2016 - tchvatal@suse.com
-
-- Add dependencies to the devel pacakge in baselibs.conf
-
--------------------------------------------------------------------
-Wed May 4 10:36:40 UTC 2016 - tchvatal@suse.com
-
-- Update patch use-mirrortype-asdefault-whenclvmdrunning.patch
- to match up the patches/pvmove_support_clustered_vg.diff and not
- use the define declared only when building clvm codebase;
- it is still broken if someone changes the PID location, but at least
- it now does not depend on clvm code
-- Regenerate_initrd in post of the lvm2 main pkg
-- Update baselibs to point to split-out devicemapper libraries
-
--------------------------------------------------------------------
-Wed May 4 09:27:30 UTC 2016 - tchvatal@suse.com
-
-- Keep in sync the common configuration options that are shared among
- all the variants dm/lvm2/clvm
-
--------------------------------------------------------------------
-Tue May 3 14:03:30 UTC 2016 - tchvatal@suse.com
-
-- Provide symlinks to 1.02 versions of dm and dm-event libs
- * this should sort out binary packages without the need of double
- rebuilding
-
--------------------------------------------------------------------
-Tue May 3 13:23:52 UTC 2016 - tchvatal@suse.com
-
-- Update to 2.02.152 release, read WHATS_NEW for detailed log.
-- Refresh patches:
- * 10-dm.rules-Reset-state-variable-for-spurious-events.patch
- * device-mapper-gcc-warnings.patch
- * device-mapper-link.patch
- * udev-Check-for-DM_NR_VALID_PATHS.patch
-- Slightly tweak btrfs patch as the code changed for the detection:
- * fsadm-add-support-for-btrfs.patch
-
--------------------------------------------------------------------
-Tue May 3 12:55:34 UTC 2016 - tchvatal@suse.com
-
-- Build and install properly cluster files
-- Remove csm-converter.tar.gz as the evms was last present on sle10
- and thus migration is bit out of scope today
-
--------------------------------------------------------------------
-Tue May 3 09:23:48 UTC 2016 - tchvatal@suse.com
-
-- Add pre_checkin.sh to allow syncing of patches between packages:
- workflow = add everything to lvm2.spec and run pre_checkin.sh
-
--------------------------------------------------------------------
-Mon May 2 17:41:55 UTC 2016 - tchvatal@suse.com
-
-- Refresh patch use-mirrortype-asdefault-whenclvmdrunning.patch to
- work without clvm code enabled
-
--------------------------------------------------------------------
-Mon May 2 17:29:09 UTC 2016 - tchvatal@suse.com
-
-- Regenerate lvm2 tmpfiles after install so they won't populate just
- after the reboot
-- Split out lvm2 libraries to separate subpkgs per standards
-- Rename versioning of plugins patch:
- * version-plugins-in-libdir -> version-plugins-in-libdir.patch
-
--------------------------------------------------------------------
-Mon May 2 16:51:09 UTC 2016 - tchvatal@suse.com
-
-- Remove evms provides/obsoletes, last seen on sle10
-- Mark configs as such
-- Ghost the during-run created dirs
-- Install rcbla compat service symlinks
-
--------------------------------------------------------------------
-Mon May 2 15:13:35 UTC 2016 - tchvatal@suse.com
-
-- Sync with device-mapper.spec, build only lvm and wipe devicemapper
- binaries
-- Install in /usr there is no technical reason to keep this out
- of /usr
-
--------------------------------------------------------------------
-Mon May 2 13:23:49 UTC 2016 - tchvatal@suse.com
-
-- Split out device-mapper and clvm to separate spec files
- * No factual changes just deletion in the spec to keep it out
- of interacting with those parts
-
--------------------------------------------------------------------
-Fri Apr 29 11:05:04 UTC 2016 - tchvatal@suse.com
-
-- Do not explicitely require expat it is only used by thin_provisioning
-
--------------------------------------------------------------------
-Thu Apr 28 20:40:17 UTC 2016 - tchvatal@suse.com
-
-- There is no factual reason to keep the device mapper out of /usr
- so just match everything else
-
--------------------------------------------------------------------
-Thu Apr 28 20:12:48 UTC 2016 - tchvatal@suse.com
-
-- Remove device-mapper-static.patch as there should be no need to
- have static library here and it can be reenabled with some explanation
- if needed
-
--------------------------------------------------------------------
-Thu Apr 28 19:57:54 UTC 2016 - tchvatal@suse.com
-
-- Rename device-mapper-link to device-mapper-link.patch
-
--------------------------------------------------------------------
-Mon Mar 7 01:53:34 UTC 2016 - lwang@suse.com
-
-- not output error message inside retry loops to avoid noisy error
- message being output inside retry loops in case of remove failure
- because device busy. (bsc#940298 boo#957059)
- add: libdm-iface-not-output-error-message-inside-retry-loop.patch
-
--------------------------------------------------------------------
-Thu Jan 28 03:47:31 UTC 2016 - lwang@suse.com
-
-- Add 'Also=lvm2-lvmetad.socket' in '[Install]' section of lvm2-lvmetad.
- service to remove lvm2-lvmetad.socket when disable lvm2-lvmetad.service.
- (bsc#960044)
- add: lvm2-lvmetad.service-add-Also-lvm2-lvmetad.socket.patch
-
--------------------------------------------------------------------
-Wed Jan 27 05:38:07 UTC 2016 - lwang@suse.com
-
-- Split thin-provisioning-tools from lvm2 package for easier maintenance.
-- Update to lvm2-2.02.141 (device-mapper-1.02.115)
- - Remove patches:
- lvm2-do-not-strip-pdata_tools.patch: thin-provisioning-tools patch
- lvmetad.c-ignore-lvmetad-global-handle-on-disconnect.patch:
- already in upstream
- no_buildroot_shared.diff: LVM_SHARED_PATH dropped by upstream
-
--------------------------------------------------------------------
-Mon Dec 14 14:52:00 CET 2015 - tiwai@suse.de
-
-- Fix missing dependency on coreutils for initrd macros (boo#958562)
-- Call missing initrd macro at postun (boo#958562)
-
--------------------------------------------------------------------
-Fri Dec 11 16:03:58 UTC 2015 - dimstar@opensuse.org
-
-- Re-add lvm2-do-not-strip-pdata_tools.patch: this is still needed.
-
--------------------------------------------------------------------
-Tue Aug 25 02:27:10 UTC 2015 - lwang@suse.com
-
-- Fix boot failed due to segfault at libc (bnc#942755)
- add: lvmetad.c-ignore-lvmetad-global-handle-on-disconnect.patch
-
--------------------------------------------------------------------
-Thu Aug 6 06:13:20 UTC 2015 - lwang@suse.com
-
-- fix spec to change /sbin/thin-check to %{_sbindir}/thin-check.
- (bnc#940754)
-
--------------------------------------------------------------------
-Mon Jul 27 19:35:15 UTC 2015 - mpluskal@suse.com
-
-- Update thin-provisioning tools to 0.5.3
- * Fix bug where the tools would crash if given a very large
- metadata device to restore to.
- * - thin_delta, thin_trim
- * --clear-needs-check flag for cache_check
- * space map checking for thin check
-- Drop unnecessary lvm2-do-not-strip-pdata_tools.patch
-
--------------------------------------------------------------------
-Fri Jul 24 13:16:09 UTC 2015 - dvaleev@suse.com
-
-- Allow building without clvm (boo#923127)
- Keep clvm2 building by default
-
--------------------------------------------------------------------
-Tue Jul 14 09:05:13 UTC 2015 - lwang@suse.com
-
-- dmeventd: fix dso_name compare error. dso_name is thought as not
- empty and doesn't create monitor thread. (bnc#935623)
- add: dmeventd-fix-dso-name-wrong-compare.patch
-
--------------------------------------------------------------------
-Tue Jul 14 05:41:55 UTC 2015 - lzhong@suse.com
-
-- 13-dm-disk.rules: Import ID_FS_XXX variables from udev
- database(bnc#909358)
- If the disk is unavailable we need to import the existing ID_FS_XXX
- variables from the database, otherwise the filesystem UUID won't
- be set and the by-uuid symlink will disappear, leading to
- intermittent boot failures
- + Import-ID_FS_XXX-variables-bnc909358.patch
-
-- 10-dm.rules: Reset state variables for spurious events (bsc#932300)
- + 10-dm.rules-Reset-state-variable-for-spurious-events.patch
-
--------------------------------------------------------------------
-Tue May 19 16:30:47 UTC 2015 - jeffm@suse.com
-
-- Update to 2.02.120
- - Fixed numerous bugs(see WHATS_NEW for full details)
- - Deleted dab3ebce-devices-Do-not-support-unpartitioned-DASD.patch (upstream)
-
--------------------------------------------------------------------
-Fri Apr 3 02:45:02 UTC 2015 - lzhong@suse.com
-
-- fsadm: add support for btrfs(fate#318413)
- fsadm-add-support-for-btrfs.patch
-
--------------------------------------------------------------------
-Mon Mar 23 07:50:05 UTC 2015 - lwang@suse.com
-
-- Moved BuildRequires: libcorosync-devel and libdlm-devel from lvm package
- to clmv package to avoid dracut build needing cluster stack to be built.
- (bsc#923127)
-
--------------------------------------------------------------------
-Sat Feb 14 14:06:36 UTC 2015 - i@marguerite.su
-
-- provides libdevmapper.so.1.02 libdevmapper-event.so.1.02
- for VirtualBox.
-
--------------------------------------------------------------------
-Thu Feb 5 03:13:52 UTC 2015 - lwang@suse.com
-
-- LVM2 does not support unpartitioned DASD device which has special
- format in the first 2 tracks and will siliently discards LVM2 lable
- information written to it when pvcreate. (bsc#894202)
- Add: dab3ebce-devices-Do-not-support-unpartitioned-DASD.patch
-- Delete lvm2-lvmetad.socket from %service_del_preun/postun to avoid
- lvmetad.service being started by 'systemctl retry-start' when updating
- package. (bsc#914415)
-
--------------------------------------------------------------------
-Thu Jan 22 09:45:12 UTC 2015 - mpluskal@suse.com
-
-- Don't replace lvm.conf
-
--------------------------------------------------------------------
-Mon Jan 12 08:33:14 UTC 2015 - mpluskal@suse.com
-
-- Re-add lvm2-lvmetad.service to %service_add_pre/post
-- Add service registrations for cmirrord and clvm
-- Correct category for device-mapper-devel
-
--------------------------------------------------------------------
-Thu Jan 8 15:21:17 UTC 2015 - dimstar@opensuse.org
-
-- Add lvm2-do-not-strip-pdata_tools.patch: Change build system to
- not strip pdata_tools during installation. We need the file in
- tact in order to be able to produce valid debuginfo packages
- (boo#910327).
-
--------------------------------------------------------------------
-Mon Dec 22 07:10:10 UTC 2014 - lwang@suse.com
-
-- delete lvm2-lvmetad.service from %service_add_pre/post and
- %service_del_preun/postun to avoid lvm2-lvmetad.service running
- when use_lvmetad=0. (bnc#901859)
-- locking_type is set to 3(clustered lock) by default will output
- warning message if cmirrord is not running. Set to 1 to be same
- with upstream. (bnc#906710)
-- Set silent default to 0 to avoid some commands have no output
- and to be same with upstream. (bnc#888798)
-
--------------------------------------------------------------------
-Mon Dec 8 21:19:13 UTC 2014 - jengelh@inai.de
-
-- spec: replace some shell variables and paths by rpm macros
-- shorten filelists by using wildcards
-
--------------------------------------------------------------------
-Wed Dec 3 03:23:47 UTC 2014 - jeffm@suse.com
-
-- Update to 2.02.114
- - Removed cmirrord-fix-s390-endian-issue.patch
- - Renumbered patches to allow for upstream patches to be applied
- before local ones.
-
--------------------------------------------------------------------
-Wed Nov 19 22:40:13 UTC 2014 - dimstar@opensuse.org
-
-- Drop libudev-devel BuildRequires: we already buildrequire
- pkgconfig(libudev), which is the better choice, as it allows us
- to get libudev-mini-devel.
-
--------------------------------------------------------------------
-Mon Nov 10 09:01:35 UTC 2014 - dimstar@opensuse.org
-
-- Require device-mapper by device-mapper-devel: otherwise, the .so
- symlinks might happen to point to no target.
-
--------------------------------------------------------------------
-Tue Oct 28 07:18:36 UTC 2014 - lwang@suse.com
-
-- Delete BuildRequire for device-mapper-devel for all symbols needed
- is created in ./include/.symlinks file.
-- Add link /usr/sbin/lvm file to avoid others using /usr/sbin/lvm
-
--------------------------------------------------------------------
-Fri Sep 26 07:09:27 UTC 2014 - lwang@suse.com
-
-- recover no_buildroot_shared.diff, this may cause gcc error
-
--------------------------------------------------------------------
-Wed Sep 24 08:24:13 UTC 2014 - lwang@suse.com
-
-- All patches eliminated since update to 2.02.111
- - Eliminated 25 patches in lvm2 package:
- no_buildroot_shared.diff: don't know why necessary change this
- pipe_buff-definition.diff: don't know why necessary
- handle_extended_devt.diff: not need(bnc#525060 not reproduce even without this patch)
- support-drbd-filter.diff: source to patch not found
- lvm-path.patch: not needed, upstream fixed hardcode
- suppress_locking_failer_message.patch: no doc as to why suppress warning
- add_scm_support.patch: definition device_info_t _device_info is no longer exist
- upstream patches(18):
- man_page_sectors.diff
- make_raid1_default.diff
- remove-fedora-systemd.patch
- 0001-lvmetad-Init-lazily-to-avoid-socket-access-on-config.patch
- do_not_read_from_mirrors_have_failed_devices.diff
- avoid_reading_failed_dev_in_mirrored_log.diff
- mirrored_log_fixed_when_double_fault_occurs.diff
- device_is_usable_mem_leak.diff
- clmvd-fix-decriptor-leak-on-restart.patch
- clvmd-Fix-node-up-down-handing-in-corosync-module.patch
- clvmd-Avoid-a-3-way-deadlock-in-dead-client-cleanup.patch
- 0001-clvmd-avoid-logging-in-signal-handler.patch
- 0001-RAID-Make-RAID-4-5-6-display-sync-status-under-headi.patch
- clvmd-fix-debugging-level-set-in-clvmd_set_debug-function.patch
- 0001-toolcontext-Only-reopen-stdin-if-readable.patch
- systemd-lvm2-activation-generator-report-only-error.patch
- systemd-use-umask-022-for-generated-systemd-units-by.patch
- remove-quote-in-lvm2-monitor.patch
-
- - Eliminated 6 patches in device-mapper package:
- bug-479104_device-mapper-dmsetup-deps-export.patch:merged with device-mapper-dmsetup-export.patch
- udev_sync-cookie_set-1-on-each-dm_task_set_cookie-ca.patch: already included in upstream
- increase-minor-version.diff: not needed
- segault_for_truncated_string_token.patch: upstream
- s390-sectorsize4096.patch: upstream
- add_integrate_flush_flag.patch: included in cmirrord_improvment_performance.patch
-
- - Moved device-mapper patches to lvm2:
- device-mapper-dmsetup-export.patch(bnc#707253)
- device-mapper-gcc-warnings.patch
- device-mapper-static.patch
- device-mapper-link
- udev_rules-update.diff(bnc#78902,bnc#789019,bnc#789020)
-
--------------------------------------------------------------------
-Wed Sep 24 02:34:46 UTC 2014 - lwang@suse.com
-
-- cmirrord has endian issue which cause cmirrord start fail on s390
- patch: cmirrord-fix-s390-endian-issue.patch(bnc#890452,bnc#893684)
-
--------------------------------------------------------------------
-Thu Sep 11 15:55:50 UTC 2014 - jeffm@suse.com
-
-- Integrated device-mapper and thin-provisioning packages into
- lvm2 package. device-mapper and lvm2 have been included in
- the same source repository for some time.
-
--------------------------------------------------------------------
-Thu Sep 11 05:17:27 UTC 2014 - jeffm@suse.com
-
-- Update to 2.02.111
- - Eliminated 21 patches.
-
--------------------------------------------------------------------
-Wed Sep 3 01:48:48 CEST 2014 - ro@suse.de
-
-- sanitize release line in specfile
-
--------------------------------------------------------------------
-Fri Jul 4 09:14:10 UTC 2014 - dmzhang@suse.com
-
-- bnc#885632, set multipath_componnet_detection = 1 per default
-
--------------------------------------------------------------------
-Fri Jun 13 10:31:48 CEST 2014 - hare@suse.de
-
-- Generate all symlinks even for multipath events (bnc#875233)
- patch: udev-Check-for-DM_NR_VALID_PATHS.patch
-
--------------------------------------------------------------------
-
-Tue May 30 09:01:08 UTC 2014 - lmb@suse.com
-
-- Versioning for the lvm2-cmirrord dependencies
-
--------------------------------------------------------------------
-Thu May 29 10:01:35 UTC 2014 - dmzhang@suse.com
-
-- bnc#878930, systemd is putting out an erroneous message about lvm2-monitor.service
- patch: remove-quote-in-lvm2-monitor.patch
-
--------------------------------------------------------------------
-Wed May 28 16:45:45 UTC 2014 - lwang@suse.com
-
-- fix lvm2-activation{,-early}.service is marked world-inaccessible (bnc#878481)
- add systemd-use-umask-022-for-generated-systemd-units-by.patch
-- add comment to lvm.conf to inform user to start lvm2-lvmetad.socket
- if it is not started in case of use_lvmetad = 1 (bnc#878473)
-- disable lvmetad in lvm.conf to fix it (bnc#862076)
-
--------------------------------------------------------------------
-Wed May 28 15:46:58 UTC 2014 - lwang@suse.com
-
-- bnc#878121, modify clvmd.ocf start debug level -d2 to d0
-
--------------------------------------------------------------------
-Wed May 28 14:57:23 UTC 2014 - lwang@suse.com
-
-- bnc#870598, change lockdir to /run/lvm/lock
- modify lvm.conf
- bnc#854092, backport patches to fix 'nohup lvm' crash
- patch:0001-toolcontext-Only-reopen-stdin-if-readable.patch
- bnc#870824, defaut the mirrortype to mirror when clvmd is running
- patch:use-mirrortype-asdefault-whenclvmdrunning.patch
- bnc#859824, get rid of the annoying message 'LVM activation generator successfully completed'
- patch:systemd-lvm2-activation-generator-report-only-error.patch
- bnc#837538, fix closedown of clvmd
- patch:fix-closedown-before-thread-finish.patch
-
--------------------------------------------------------------------
-Wed May 28 14:50:13 UTC 2014 - lwang@suse.com
-
-- Added: clvmd-fix-debugging-level-set-in-clvmd_set_debug-function.patch
- This patch is missed in sle12, added from sle11sp3
- Fix debugging level set in clvmd_set_debug by using the correct
- variable (bnc#785467),change default -d0 to -d2
-
--------------------------------------------------------------------
-Wed May 28 14:34:04 UTC 2014 - meissner@suse.com
-
-- add missing %pre section, specify all sockets and services in
- all 4 calls.
-
--------------------------------------------------------------------
-Mon May 12 08:11:08 UTC 2014 - lwang@suse.com
-
--bnc#871176, 0001-RAID-Make-RAID-4-5-6-display-sync-status-under-headi.patch
-
--------------------------------------------------------------------
-Wed Apr 16 09:11:32 UTC 2014 - trenn@suse.de
-
-- Switch from mkinitrd to dracut
- - Dracut already has a lvm module and takes care that the right stuff is
- include into initrd, therefore remove:
- - mkinitrd-lvm2-boot.sh
- - mkinitrd-lvm2-setup.sh
- mkinitrd scripts from sources
- - Add dracut macros in %post and %posttrans to ensure initrd recreation
-- Remove unneeded comments in .spec file
-- Do not compile in DATE and TIME to avoid build unneeded retriggering in obs
- Add: cmirrord_remove_date_time_from_compilation.patch
-
--------------------------------------------------------------------
-Tue Apr 8 08:47:51 UTC 2014 - lwang@suse.com
-
-- bnc#862403, modify lvm.conf to add filter to exclude floppy and cdrom
-
--------------------------------------------------------------------
-Tue Mar 25 09:08:16 UTC 2014 - dmzhang@suse.com
-
-- backport more patches from slesp3(bnc#831518)
- scm support:
- add_scm_support.patch
- mirrored log fix:
- do_not_read_from_mirrors_have_failed_devices.diff
- avoid_reading_failed_dev_in_mirrored_log.diff
- mirrored_log_fixed_when_double_fault_occurs.diff
- device_is_usable_mem_leak.diff
- clvmd:
- clmvd-fix-decriptor-leak-on-restart.patch
- clvmd-Avoid-a-3-way-deadlock-in-dead-client-cleanup.patch
- clvmd-Fix-node-up-down-handing-in-corosync-module.patch
- 0001-clvmd-avoid-logging-in-signal-handler.patch
- fate#314367, missing patch
- lvconvert-cluster-mirrored-disk-failed.patch
- other fix:
- pvmove_support_clustered_vg.diff
- suppress_format1_size_warning.diff
- display-dm-name-for-lv-name.diff
- no longer needed patches:
- autoactivate-lvmetad-with-generator.patch
-
--------------------------------------------------------------------
-Thu Feb 20 16:23:21 UTC 2014 - arvidjaar@gmail.com
-
-- add 0001-lvmetad-Init-lazily-to-avoid-socket-access-on-config.patch
- avoid connect to lvmetad.socket too early to prevent deadlock during
- "systemctl daemon-reload" (bnc#862076)
-
--------------------------------------------------------------------
-Thu Feb 13 06:39:47 UTC 2014 - dmzhang@suse.com
-
-- fate#315092, improve performance of cluster mirror
- add cmirrord_improvment_performance.patch
-
--------------------------------------------------------------------
-Wed Feb 12 15:17:05 UTC 2014 - arvidjaar@gmail.com
-
-- add autoactivate-lvmetad-with-generator.patch - if use_lvmetad=1,
- automatically activate lvm2-lvmetad.socket to ensure lvmetad is
- started when required (bnc#862076)
-
--------------------------------------------------------------------
-Wed Jan 22 14:34:41 UTC 2014 - henrik.kuhn@origenis.de
-
-- added a lvm2-devel package definition
-
--------------------------------------------------------------------
-Mon Jan 6 07:43:59 UTC 2014 - dmzhang@suse.com
-
-- add csm_convert to lvm2-clvm package(bnc#854076)
-- system fails to boot due to missing /usr/sbin/lvm(bnc#837954)
-- lvm2 systemd incorrectly uses dependencies on Fedora services(bnc#851741)
-- set use_lvmetad = 1 as default of lvm.conf(bnc#854413)
-- drop patch dont_ignore_tmp_device_file.diff
-- backport patches from sle11sp3
- fate#314367,cluster_support_mirrord_log.diff
- fate#312248,make-mirror-legs-on-different-tag-pvs.patch
- improve-mirror-legs-on-different-tag-pvs.patch
-- set default mirror to md_raid1 insdead of dm_mirror for better performance
-- enable lvm2-lvmetad.socket by default
-
--------------------------------------------------------------------
-Sun Oct 27 21:44:41 CET 2013 - ohering@suse.de
-
-- Remove /etc/sysconfig/lvm to avoid errors during mkinitrd run
- LVM_VGS_ACTIVATED_ON_BOOT is not handled anymore with systemd
-- Remove fillup and insserv from PreReq
-
--------------------------------------------------------------------
-Mon Oct 21 08:09:41 UTC 2013 - dmzhang@suse.com
-
-- bnc#779965, use export before %configure in spec
-
--------------------------------------------------------------------
-Wed Sep 11 10:18:47 CEST 2013 - fcrozat@suse.com
-
-- Add lvm-path.patch: fix lvm binary path in systemd generator.
-- Use %_tmpfilesdir macro for tmpfiles directory.
-
--------------------------------------------------------------------
-Sun Sep 8 22:20:46 UTC 2013 - crrodriguez@opensuse.org
-
-- Set all "run" directories relative to /run not just the "lock"
- location
-- Install /usr/lib/tmpfiles.d/lvm2.conf as required to ensure
- such runtime directories are _always_ there.
-
--------------------------------------------------------------------
-Wed Aug 28 11:15:54 UTC 2013 - meissner@suse.com
-
-- replace BuildRequires: systemd by pkgconfig(udev) again
- to avoid cycles.
-
--------------------------------------------------------------------
-Tue Aug 20 07:59:06 UTC 2013 - dmzhang@suse.com
-
-- add systemd support to lvm2 package
- split device-mapper to another package.
-
--------------------------------------------------------------------
-Tue Jul 16 14:55:10 CEST 2013 - ohering@suse.de
-
-- Remove usage of absolute paths in mkinitrd scripts
-
--------------------------------------------------------------------
-Tue Jul 16 14:39:31 CEST 2013 - ohering@suse.de
-
-- Fix parsing lvdisplay -c output with more than 10 volumes in
- mkinitrd-lvm2-setup.sh (bnc#826727)
-
--------------------------------------------------------------------
-Mon Apr 22 14:01:29 UTC 2013 - cfarrell@suse.com
-
-- license update: GPL-2.0 and LGPL-2.1
- Presence of multiple files (both GPL and LGPL) with "only" licenses
-
--------------------------------------------------------------------
-Tue Apr 16 11:57:28 UTC 2013 - mmeister@suse.com
-
-- Added url as source.
- Please see http://en.opensuse.org/SourceUrls
-
--------------------------------------------------------------------
-Fri Feb 15 11:44:36 UTC 2013 - rmilasan@suse.com
-
-- Move all udev releated files in the appropriate udev directory.
-
--------------------------------------------------------------------
-Wed Nov 28 09:37:23 UTC 2012 - rmilasan@suse.com
-
-- udev_sync-cookie_set-1-on-each-dm_task_set_cookie-ca.patch:
- cookie_set=1 on each dm_task_set_cookie call (bnc#788882)
-
--------------------------------------------------------------------
-Mon Nov 12 10:41:45 UTC 2012 - seife+obs@b1-systems.com
-
-- fix 10-dm.rules (bnc#789021)
-- port dmsetup export patch to new LVM code (bnc#789019,bnc#789020)
-
--------------------------------------------------------------------
-Mon Nov 5 21:10:28 UTC 2012 - hrvoje.senjan@gmail.com
-
-- Now also fix devmapper-setup
-
--------------------------------------------------------------------
-Mon Nov 5 12:08:26 UTC 2012 - hrvoje.senjan@gmail.com
-
-- Adapt mkinitrd scripts to new udev locataion
-
--------------------------------------------------------------------
-Sun Nov 4 02:31:00 UTC 2012 - crrodriguez@opensuse.org
-
-- Fix booting ... place udev rules in the proper location..
-
--------------------------------------------------------------------
-Thu Oct 18 12:35:30 UTC 2012 - hrvoje.senjan@gmail.com
-
-- Change the default locking dir to reflect the change in filesystem package
-
--------------------------------------------------------------------
-Wed Oct 17 23:01:54 UTC 2012 - nfbrown@suse.com
-
-- lvm2.spec: merge rules for device-mapper and
- lvm2-clvm packages, so there is only one
- spec file and all packages are built consistently.
-
--------------------------------------------------------------------
-Tue Oct 16 09:34:40 UTC 2012 - coolo@suse.com
-
-- build against the minimal udev to avoid cycles
-- the sysvinit requires are no longer necessary
-
--------------------------------------------------------------------
-Tue Oct 16 04:19:59 UTC 2012 - nfbrown@suse.com
-
-- Upgrade to LVM2-2-02-98. Improvements include
- improved interaction with udev and systemd,
- improved dmraid support, and new command
- "blkdeactivate".
-
--------------------------------------------------------------------
-Thu Sep 27 01:11:17 UTC 2012 - nfbrown@suse.com
-
-- lvm2.spec: make sure MODPROBE_CMD is set properly
- when configure is run. Without it, modules are
- not auto-loaded. (bnc#779965)
-
--------------------------------------------------------------------
-Fri Apr 20 07:52:09 UTC 2012 - rmilasan@suse.com
-
-- Run update of initrd at %post and %postun.
- We need this to make sure initrd reflects the updates.
-
--------------------------------------------------------------------
-Sun Sep 18 17:17:12 UTC 2011 - jengelh@medozas.de
-
-- Remove redundant tags/sections from specfile
- (cf. packaging guidelines)
-- Use %_smp_mflags for parallel build
-
--------------------------------------------------------------------
-Fri May 27 09:09:35 UTC 2011 - lnussel@suse.de
-
-- don't unconditionally enable boot.lvm by default. yast takes care
- of enabling the script when creating lvm volumes.
-- don't hard require boot.device-mapper in boot.dmraid. dm-mod is
- autoloaded when accessing /dev/mapper/control anyways.
-
--------------------------------------------------------------------
-Thu Mar 10 11:07:22 UTC 2011 - coolo@novell.com
-
-- prereq sysvinit(boot.device-mapper) to fix build
-
--------------------------------------------------------------------
-Tue Feb 15 08:48:48 UTC 2011 - xwhu@novell.com
-
-- Update to LVM 2.02.84
- - Fix handling of simultaneous mirror image and mirrored log
- image failure.
- - Fix vgremove to allow removal of VG with missing PVs
- - Remove log directly if all mirror images of a mirrored log fail
- - Fix potential for corruption during cluster mirror device
- failure
- - Allow internal suspend and resume of origin without its
- snapshots
- - Allow exclusive activation of snapshots in a cluster
-
--------------------------------------------------------------------
-Thu Nov 11 12:24:04 UTC 2010 - coolo@novell.com
-
-- own parent directories for device-mapper files
-
--------------------------------------------------------------------
-Sun Oct 31 12:37:02 UTC 2010 - jengelh@medozas.de
-
-- Use %_smp_mflags
-
--------------------------------------------------------------------
-Fri Jul 16 10:11:59 UTC 2010 - xwhu@novell.com
-
-- bnc#556177, undefined symbol error while loading dmevent so.
-
--------------------------------------------------------------------
-Wed Jun 23 05:50:12 UTC 2010 - xwhu@novell.com
-
-- Update to LVM.2.02.67
- - Require partial option in lvchange --refresh for partial LVs
- - Add replicators' LVs to dtree for activation
- - Add lvm2app interfaces to lookup a vgname from a pvid and pvname
- - Fix memory leak for invalid regex pattern input
- - Disallow the direct removal of a merging snapshot
- - Fix lvconvert error message when existing mirrored LV is not found
- - Add LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES environment variable
- - Improve snapshot merge metadata import validation
-
--------------------------------------------------------------------
-Tue Jun 1 14:06:38 UTC 2010 - xwhu@novell.com
-
-- Specify udev_sync and udev_rules in /etc/lvm/lvm.conf
-
--------------------------------------------------------------------
-Fri May 21 03:41:47 UTC 2010 - xwhu@novell.com
-
-- Fix mkinitrd-lvm2 to use udev rules for lvm2
-
--------------------------------------------------------------------
-Mon Apr 26 16:51:10 CEST 2010 - ro@suse.de
-
-- fix lvm2-clvm specfile so that patches apply
-
--------------------------------------------------------------------
-Sat Apr 3 03:17:12 UTC 2010 - xwhu@novell.com
-
-- Upgrade to LVM2 2.02.58
- - Rename liblvm.so to liblvm2app.so
- - Introduce lvconvert --use_policies
- - Add readonly locking type to replace implementation of
- --ignorelockingfailure
- - Add liblvm APIs to implement creation and deletion of VGs
- - Add activation/udev_sync to lvm.conf
- - Enable dmeventd monitoring section of config file by default
- - Add --pvmetadatacopies for pvcreate, vgcreate, vgextend,
- vgconvert.
-
--------------------------------------------------------------------
-Sun Nov 29 06:58:45 UTC 2009 - xwhu@novell.com
-
-- Link liblvm2cmd.so to libdevmapper-event.so (bnc#556177)
-
--------------------------------------------------------------------
-Sun Nov 15 10:40:19 CET 2009 - meissner@suse.de
-
-- quilt refreshed all patches.
-
--------------------------------------------------------------------
-Mon Oct 12 13:31:12 UTC 2009 - xwhu@novell.com
-
-- make $tmp_mnt/etc/sysconfig before copying file into (bnc#525237)
-
--------------------------------------------------------------------
-Wed Sep 23 06:38:47 UTC 2009 - xwhu@novell.com
-
-- Add -lvm2- infix to mkinitrd scripts
-- collect_lvm reads /etc/sysconfig/lvm (bnc#523944)
-
--------------------------------------------------------------------
-Fri Aug 28 07:37:13 UTC 2009 - xwhu@novell.com
-
-- Support extended dev with major 259
-
--------------------------------------------------------------------
-Fri Jun 26 11:08:39 CST 2009 - xwhu@suse.de
-
-- bnc#510058, typo in dont_ignore_tmp_device_file.diff, which hangs
- mkinitrd
-
-Mon May 25 16:47:18 CST 2009 - xwhu@suse.de
--------------------------------------------------------------------
-
-- Cleanup scripts for mkinitrd, so that udev can activate root LV.
-
-Mon Apr 27 18:37:32 CST 2009 - xwhu@suse.de
--------------------------------------------------------------------
-
-- Upgrade to LVM2 2.02.45
- Avoid scanning empty metadata areas for VG names
- Pass --test from lvresize to fsadm as --dry-run.
- Remove duplicate cpg_initialize from clvmd startup.
- Add option to /etc/sysconfig/cluster to select cluster type for clvmd.
- Remove external dependency on the 'cut' command from fsadm.
- Fix pvs segfault when pv mda attributes requested for not available PV.
- Fix lvresize size conversion for fsadm when block size is not 1K.
- Add pv_mda_size to pvs and vg_mda_size to vgs.
- Add "--refresh" functionality to vgchange and vgmknodes.
- Fix vgrename using UUID if there are VGs with identical names.
- Fix segfault when invalid field given in reporting commands.
- Merge device-mapper into the lvm2 tree.
- Exit with non-zero status from vgdisplay if couldn't show any requested VG.
- Fix snapshot monitoring library to not cancel monitoring invalid snapshot.
- Fix conversion of md chunk size into sectors.
- Fix misleading error message when there are no allocatable extents in VG.
- Fix handling of PVs which reappeared with old metadata version.
- Fix mirror DSO to call vgreduce with proper parameters.
- Fix validation of --minor and --major in lvcreate to require -My always.
- Fix release: clvmd build, vgreduce consolidate & tests, /dev/ioerror warning.
-
--------------------------------------------------------------------
-Tue Mar 31 11:59:03 CST 2009 - xwhu@suse.de
-
-- Handle the case that drbd virtual device has the same PV uuid
- with the underlining physical device.
-
--------------------------------------------------------------------
-Wed Mar 25 23:14:29 CST 2009 - xwhu@suse.de
-
-- Do not filter out tmp device file(bnc#485572)
-- Do not try to activate VG when all paths are down already(bnc#479104)
-
--------------------------------------------------------------------
-Wed Mar 25 22:50:50 CST 2009 - xwhu@suse.de
-
-- Split CLVMD as a independent package
-
--------------------------------------------------------------------
-Tue Mar 24 00:23:13 CST 2009 - xwhu@suse.de
-
-- Fix for bnc#486952
- use "killproc -INT" instead of "killproc"
- handle signal in the main loop thread only
-
--------------------------------------------------------------------
-Thu Feb 26 14:08:22 CST 2009 - xwhu@suse.de
-
-- add daemon_options parameter to clvmd.ocf
-- check EUNLOCK for dlm_ls_unlock_wait
-
--------------------------------------------------------------------
-Wed Feb 25 18:39:26 CST 2009 - xwhu@suse.de
-
-- bnc#479422, check both lksb.sb_status and status.
-
--------------------------------------------------------------------
-Fri Feb 20 10:24:00 CET 2009 - xwhu@suse.de
-
-- simplify patch of dlm lock to clvmd
-
--------------------------------------------------------------------
-Fri Feb 20 08:06:37 CET 2009 - xwhu@suse.de
-
-- bnc#476861, clvmd.ocf doesn't report the correct status when
- kill -9 doesn't terminate the process
-
--------------------------------------------------------------------
-Thu Jan 22 13:00:26 CST 2009 - xwhu@suse.de
-
-- bnc#464851, use dlm instead of openais lck
-
--------------------------------------------------------------------
-Wed Jan 21 15:23:31 CET 2009 - ro@suse.de
-
-- do not require a specific package release from subpackage
- (bnc#467704)
-
--------------------------------------------------------------------
-Wed Dec 3 18:51:27 CST 2008 - xwhu@suse.de
-
-- Add OCF script for clvmd
-
--------------------------------------------------------------------
-Wed Nov 12 02:22:56 CST 2008 - xwhu@suse.de
-
-- bnc#443677. dmeventd DSOs are linked against liblvm2cmd
-
--------------------------------------------------------------------
-Thu Oct 9 11:54:47 CEST 2008 - xwhu@suse.de
-
-- bnc#432782. Remove vol_id in 64-lvm2.rules.
-
--------------------------------------------------------------------
-Mon Sep 29 14:09:33 CEST 2008 - ro@suse.de
-
-- buildreq: replace openais-devel by libopenais-devel
-
--------------------------------------------------------------------
-Wed Sep 24 18:25:40 CEST 2008 - ro@suse.de
-
-- change "udevsettle" to "udevadm settle"
-
--------------------------------------------------------------------
-Sat Sep 13 11:59:34 CEST 2008 - xwhu@novell.com
-
-- added missing directories to filelist
-
--------------------------------------------------------------------
-Wed Sep 10 13:43:17 CEST 2008 - xwhu@novell.com
-
-- Upgrade to 2.0.39
- Fix up cache for PVs without mdas after consistent VG metadata is processed.
- Update validation of safe mirror log type conversions in lvconvert.
- Fix lvconvert to disallow snapshot and mirror combinations.
- Fix reporting of LV fields alongside unallocated PV segments.
- Add --unquoted and --rows to reporting tools.
- Avoid undefined return value after _memlock manipulation in lvm2_run.
- Avoid link failure if configured without --enable-cmdlib or --enable-readline.
- Make clvmd return at once if other nodes down in a gulm or openais cluster.
- Fix and improve readahead 'auto' calculation for stripe_size.
- Fix lvchange output for -r auto setting if auto is already set.
- Fix ambiguous use of identifier error_message_produced.
- Fix add_mirror_images not to dereference uninitialized log_lv upon failure.
- Don't call openlog for every debug line output by clvmd.
- Add --force to lvextend and lvresize.
- Fix vgchange to not activate mirror leg and log volumes directly.
- Fix test directory clean up in make distclean.
-- pvcreate/pvremove/pvchange will create symlinks in /dev/disk/by-id/
- to the device file
--------------------------------------------------------------------
-Wed Sep 3 11:09:34 CEST 2008 - hare@suse.de
-
-- Call mkinitrd_setup during %post and %postun (bnc#413709)
-
--------------------------------------------------------------------
-Tue Sep 2 16:59:00 CEST 2008 - hare@suse.de
-
-- Fix initrd scripts if no 'root=' parameter is given
- (bnc#421546)
-
--------------------------------------------------------------------
-Mon Aug 25 12:49:58 CEST 2008 - aj@suse.de
-
-- Provide and obsolete evms.
-
--------------------------------------------------------------------
-Mon Aug 25 12:04:29 CEST 2008 - prusnak@suse.cz
-
-- enabled SELinux support [Fate#303662]
-
--------------------------------------------------------------------
-Fri Aug 22 12:58:08 CEST 2008 - xwhu@suse.de
-
-- Remove the -p option for fillup_and_insserv
-
--------------------------------------------------------------------
-Wed Aug 13 06:18:44 CEST 2008 - xwhu@suse.de
-
-- Add Should-Stop to boot.lvm
-
--------------------------------------------------------------------
-Thu Jul 31 16:13:59 CST 2008 - xwhu@suse.de
-
-- repack LVM2.2.02.38.tar.bz2 into bz2 format
-
--------------------------------------------------------------------
-Wed Jul 23 15:38:13 CEST 2008 - hare@suse.de
-
-- Include mkinitrd scriptlets.
-
--------------------------------------------------------------------
-Fri Jun 27 07:51:31 CEST 2008 - xwhu@suse.de
-
-- update to 2.02.38
- Fix tracking of validity of PVs with no mdas in lvmcache.
- Fix return values for reporting commands when run with no PVs, LVs, or VGs.
- Fix free_count when reading pool metadata.
- Fix segfault when using pvcreate on a device containing pool metadata.
- Fix segfault after _free_vginfo by remembering to remove vginfo from list.
- Fix setpriority error message to signed int.
- Fix uninitialised mutex in clvmd if all daemons are not running at startup.
- Fix fsadm.sh to work with older blockdev, blkid & readlink binaries.
- Fix lvresize to pass new size to fsadm when extending device.
- Fix nodes list in clvmd-openais, and allow for broadcast messages.
- Fix vgsplit internal counting of snapshot LVs.
- Fix vgmerge snapshot_count when source VG contains snapshots.
- Fix internal LV counter when a snapshot is removed.
- Fix metadata corruption writing lvm1-formatted metadata with snapshots.
- Fix lvconvert -m0 allocatable space check.
- Fix vgdisplay 'Cur LV' field to match lvdisplay output.
- Fix lv_count report field to exclude hidden LVs.
- Fix vgsplit to only move hidden 'snapshotN' LVs when necessary.
- Fix vgreduce to use vg_split_mdas to check sufficient mdas remain.
- Fix orphan VG name used for format_pool.
- Fix output if overriding command_names on cmdline.
- Fix vgsplit locking of new VG (2.02.30).
- Fix redundant lvresize message if vg doesn't exist.
- Fix another allocation bug with clvmd and large node IDs.
- Fix uninitialised variable in clvmd that could cause odd hangs.
-
--------------------------------------------------------------------
-Mon May 5 11:19:29 CEST 2008 - aj@suse.de
-
-- Fix requires of clvm.
-
--------------------------------------------------------------------
-Wed Apr 30 12:17:29 CEST 2008 - hare@suse.de
-
-- Fixup build errors
-
--------------------------------------------------------------------
-Wed Apr 30 09:22:55 CEST 2008 - xwhu@suse.de
-
-- Cleanup clvmd code on openais stack to make it work
-- Split clvmd into a separate package (bnc#384708)
-
--------------------------------------------------------------------
-Wed Apr 23 12:16:22 CEST 2008 - xwhu@suse.de
-
-- Change async lock primitives to sync
-
--------------------------------------------------------------------
-Wed Apr 23 07:29:12 CEST 2008 - xwhu@suse.de
-
-- Fix build aginst beta
- definition of PIPE_BUF is missing
-
--------------------------------------------------------------------
-Tue Apr 22 10:47:17 CEST 2008 - xwhu@suse.de
-
-- Enable CLVM support in LVM2
-
--------------------------------------------------------------------
-Wed Feb 20 11:47:30 CET 2008 - fehr@suse.de
-
-- allow large minor number on command line with option --minor
- (bnc#362960)
-
--------------------------------------------------------------------
-Wed Feb 13 14:11:32 CET 2008 - fehr@suse.de
-
-- update to new version 2.02.33
- Fix mirror log name construction during lvconvert. (2.02.30)
- Make monitor_dev_for_events recurse through the stack of LVs.
- Clean up some more compiler warnings.
-
--------------------------------------------------------------------
-Thu Feb 7 08:59:16 CET 2008 - hare@suse.de
-
-- Enable dmeventd (FATE#303381)
-
--------------------------------------------------------------------
-Thu Jan 31 12:01:35 CET 2008 - fehr@suse.de
-
-- update to new version 2.02.32
- Fix two check_lv_segments error messages to show whole segment
- Refactor mirror log attachment code
- Fix pvs, vgs, lvs error exit status on some error paths
- Avoid readahead error message with default setting of lvcreate -M1
- Set default readahead to twice maximium stripe size
- Reinstate VG extent size and stripe size defaults (halved)
- Change vgsplit -l (for unimplemented --list) into --maxlogicalvolumes
- Fix process_all_pvs to detect non-orphans with no MDAs correctly
- Don't use block_on_error with mirror targets version 1.12 and above
- Update vgsplit to accept vgcreate options when new VG is destination
- Update vgsplit to accept existing VG as destination
- lvconvert waits for completion of initial sync by default
- Refactor vgcreate for parameter validation and add tests
- Add new convert_lv field to lvs output
- Print warning when lvm tools are running as non-root
- Prevent pvcreate from overwriting MDA-less PVs belonging to active VGs
- Fix a segfault if using pvs with --all argument
- Update --uuid argument description in man pages
- Fix vgreduce PV list processing not to process every PV in the VG
- Extend lvconvert to use polldaemon
- Add support for stacked mirrors
- Major restructuring of pvmove and lvconvert layer manipulation code
-
--------------------------------------------------------------------
-Mon Dec 10 12:29:12 CET 2007 - fehr@suse.de
-
-- update to new version 2.02.29
- Accept sizes with --readahead argument.
- Store size arguments as sectors internally.
- Attempt to remove incomplete LVs with lvcreate zeroing/activation problems.
- Add read_ahead activation code.
- Extend readahead arg to accept "auto" and "none".
- Prevent lvconvert -s from using same LV as origin and snapshot.
- Fix human-readable output of odd numbers of sectors.
- Show 'not usable' space when PV is too large for device in pvdisplay.
- Ignore and fix up any excessive device size found in metadata.
- Detect md superblocks version 1.0, 1.1 and 1.2.
- Handle new sysfs subsystem/block/devices directory structure.
- Add %PVS extents option to lvresize, lvextend, and lvcreate.
- Modify lvremove to prompt for removal if LV active on other cluster nodes.
- Add '-f' to vgremove to force removal of VG even if LVs exist.
-
--------------------------------------------------------------------
-Thu Nov 22 14:49:39 CET 2007 - fehr@suse.de
-
-- adapt man page for pvdisplay to program (#342862)
-- fix spec file to detect path to modprobe binary (#331968)
-
--------------------------------------------------------------------
-Thu Nov 22 12:44:16 CET 2007 - fehr@suse.de
-
-- update to new version 2.02.28
- Fix inconsistent licence notices: executables are GPLv2; libraries LGPLv2.1.
- Add support for renaming mirrored LVs.
- Add --mirrorlog argument to specify log type for mirrors.
- Fix lvdisplay man page to say LV size is reported in sectors, not KB.
- Fix snapshot cow area deactivation if origin is not active.
- Add vg_mda_count and pv_mda_count columns to reports.
- Handle vgsplit of an entire VG as a vgrename.
- Print warnings to stderr instead of stdout.
- Update vgcfgrestore man page.
- Allow keyboard interrupt during user prompts when appropriate.
- Add -f to vgcfgrestore to list metadata backup files.
- Add pvdisplay --maps implementation.
- Remove unsupported LVM1 options from vgcfgrestore man page.
- Update vgcfgrestore man page to show mandatory VG name.
- Update vgrename man page to include UUID and be consistent with lvrename.
-
--------------------------------------------------------------------
-Mon May 7 14:02:16 CEST 2007 - fehr@suse.de
-
-- update to new version 2.02.25
- Add devices/preferred_names config regex list for displayed device names
- Update pvck to include text metadata area and record detection
- Fix creation and conversion of mirrors with tags
- Fix vgsplit for lvm1 format (set and validate VG name in PVs metadata)
- Split metadata areas in vgsplit properly
- Fix vgremove to require at least one vg argument
- Fix reading of striped LVs in LVM1 format
- Fix vgsplit to handle mirrors
- Fix md signature check to handle both endiannesses
- Add devices/ignore_suspended_devices to ignore suspended dm devices
-
--------------------------------------------------------------------
-Tue Feb 20 16:57:34 CET 2007 - fehr@suse.de
-
-- add boot.dmraid to Should-Start in boot.lvm2
-
--------------------------------------------------------------------
-Sun Feb 11 18:49:50 CET 2007 - ro@suse.de
-
-- fix build as non-root and use DESTDIR
-
--------------------------------------------------------------------
-Mon Jan 8 16:15:23 CET 2007 - fehr@suse.de
-
-- fix buggy pointer arithmetic (#232117)
-
--------------------------------------------------------------------
-Mon Dec 18 10:39:49 CET 2006 - fehr@suse.de
-
-- update to new version 2.02.17
- Add missing pvremove error message when device doesn't exist.
- When lvconvert allocates a mirror log, respect parallel area constraints.
- Use loop to iterate through the now-ordered policy list in _allocate().
- Check for failure to allocate just the mirror log.
- Introduce calc_area_multiple().
- Support mirror log allocation when there is only one PV: area_count now 0.
- Fix detection of smallest area in _alloc_parallel_area() for cling policy.
- Add manpage entry for clvmd -T
- Fix gulm operation of clvmd, including a hang when doing lvchange -aey
- Fix hang in clvmd if a pre-command failed.
-
--------------------------------------------------------------------
-Wed Dec 6 10:07:57 CET 2006 - fehr@suse.de
-
-- update to new version 2.02.16
- Fix VG clustered read locks to use PR not CR.
- Adjust some alignments for ia64/sparc.
- Fix mirror segment removal to use temporary error segment.
- Add -T (startup timeout) switch to clvmd.
- Install lvmdump by default.
- Fix check for snapshot module when activating snapshot.
- Fix pvremove error path for case when PV is in use.
- Warn if certain duplicate config file entries are seen.
- Fix --autobackup argument which could never disable backups.
- Fix a label_verify error path.
- Fix adjusted_mirror_region_size() to handle 64-bit size.
- Add some missing bounds checks on 32-bit extent counters.
- Add Petabyte and Exabyte support.
- Fix lvcreate error message when 0 extents requested.
- lvremove man page: volumes must be cluster inactive before being removed.
- Protect .cache manipulations with fcntl locking.
- Change .cache timestamp comparisons to use ctime.
- Fix mirror log LV writing to set all bits in whole LV.
- Fix high-level free space check for partial allocations.
-
--------------------------------------------------------------------
-Mon Oct 30 12:19:07 CET 2006 - fehr@suse.de
-
-- update to new version 2.02.13 to finally fix bug #178321
- Add couple of missing files to tools/Makefile CLEAN_TARGETS.
- When adding snapshot leave cow LV mapped device active after zeroing.
- Fix a clvmd debug message.
- Add dev_flush() to set_lv().
- Add lvchange --resync.
- Perform high-level free space check before each allocation attempt.
- Don't allow a node to remove an LV that's exclusively active on anther node.
- Cope if same PV is included more than once in cmdline PE range list.
- Set PV size to current device size if it is found to be zero.
- Add segment parameter to target_present functions.
-
--------------------------------------------------------------------
-Tue Oct 17 10:55:33 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.12
- Fix pvdisplay to use vg_read() for non-orphans.
- Fall back to internal locking if external locking lib is missing or fails.
- Retain activation state after changing LV minor number with --force.
- Propagate clustered flag in vgsplit and require resizeable flag.
- Add clvmd function to return the cluster name. not used by LVM yet.
- Add cling allocation policy.
- Change _check_contiguous() to use _for_each_pv().
- Extend _for_each_pv() to allow termination without error.
- Abstract _is_contiguous().
- Remove duplicated pv arg from _check_contiguous().
- Accept regionsize with lvconvert.
- Add report columns with underscore before field names ending 'size'.
- Correct regionsize default on lvcreate man page (MB).
- Fix clvmd bug that could cause it to die when a node with a long name crashed
- Add device size to text metadata.
- Fix format_text mda_setup pv->size and pv_setup pe_count calculations.
- Fix _for_each_pv() for mirror with core log.
- Add lvm_dump.sh script to create a tarball of debugging info from a system.
- Capture error messages in clvmd and pass them back to the user.
- Remove unused #defines from filter-md.c.
- Make clvmd restart init script wait until clvmd has died before starting it.
- Add -R to clvmd which tells running clvmds to reload their device cache.
- Add LV column to reports listing kernel modules needed for activation.
- Show available fields if report given invalid field. (e.g. lvs -o list)
- Add timestamp functions with --disable-realtime configure option.
- Add %VG, %LV and %FREE suffices to lvcreate/lvresize --extents arg.
- Fix two potential NULL pointer derefs in error cases in vg_read().
- Separate --enable-cluster from locking lib options in lvmconf.sh.
- Add a missing comma in lvcreate man page.
-
--------------------------------------------------------------------
-Wed Sep 20 13:26:58 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.10
- Fix lvconvert mirror change case detection logic.
- Fix mirror log detachment so it correctly becomes a standalone LV.
- Extend _check_contiguous() to detect single-area LVs.
- Include mirror log (untested) in _for_each_pv() processing.
- Use MIRROR_LOG_SIZE constant.
- Remove struct seg_pvs from _for_each_pv() to generalise.
- Avoid adding duplicates to list of parallel PVs to avoid.
- Fix several incorrect comparisons in parallel area avoidance code.
- Fix segment lengths when flattening existing parallel areas.
- Log existing parallel areas prior to allocation.
- Fix mirror log creation when activation disabled.
- Don't attempt automatic recovery without proper locking.
- When using local file locking, skip clustered VGs.
- Add fallback_to_clustered_locking and fallback_to_local_locking parameters.
- lvm.static uses built-in cluster locking instead of external locking.
- Don't attempt to load shared libraries if built statically.
- Change default locking_lib to liblvm2clusterlock.so.
- Add skip_dev_dir() to process command line VGs.
- Stop clvmd complaining about nodes that have left the cluster.
- Move lvm_snprintf(), split_words() and split_dm_name() into libdevmapper.
- Add lvconvert man page.
- Add mirror options to man pages.
- Prevent mirror renames.
- Move CMDLIB code into separate file and record whether static build.
-
--------------------------------------------------------------------
-Wed Sep 13 13:00:55 CEST 2006 - fehr@suse.de
-
-- change BuildRequires to device-mapper-devel
-
--------------------------------------------------------------------
-Mon Aug 21 12:26:17 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.09
- Fix PE_ALIGN for pagesize over 32KB.
- Separate out LVM1_PE_ALIGN and pe_align().
- Add lvm_getpagesize wrapper.
- Add --maxphysicalvolumes to vgchange.
-
--------------------------------------------------------------------
-Wed Aug 16 11:16:13 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.08
- Add checks for duplicate LV name, lvid and PV id before writing metadata.
- Report all sanity check failures, not just the first.
- Fix missing lockfs on first snapshot creation. (#197850)
- Add unreliable --trustcache option to reporting commands.
- Fix locking for mimage removal.
- Fix clvmd_init_rhel4 'status' exit code.
-
--------------------------------------------------------------------
-Fri Jul 28 13:05:38 CEST 2006 - olh@suse.de
-
-- remove dropped boot.ibmsis from boot.lvm
-- boot.rootfsck should start before boot.lvm (#181972)
-
--------------------------------------------------------------------
-Wed Jul 26 16:34:45 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.06
- Fix activation logic in lvchange --persistent.
- Don't ignore persistent minor numbers when activating.
- Fix vgreduce --removemissing to return success if VG is already consistent.
- Fix return code if VG specified on command line is not found.
- Fix PV tools to include orphaned PVs in default output again.
- Prevent snapshots of mirrors.
- Fix lvcreate corelog validation.
- Add --config for overriding most config file settings from cmdline.
- Quote arguments when printing command line.
- Remove linefeed from 'initialising logging' message.
- Add 'Completed' debug message.
- Don't attempt library exit after reloading config files.
- Always compile with libdevmapper, even if device-mapper is disabled.
-
--------------------------------------------------------------------
-Mon May 22 17:13:21 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.06
- Propagate --monitor around cluster.
- Add --monitor to vgcreate and lvcreate to control dmeventd registration.
- Filter LCK_NONBLOCK in clvmd lock_vg.
- Add --nosync to lvcreate with LV flag NOTSYNCED.
- Use mirror's uuid for a core log.
- Add mirror log fault-handling policy.
- Improve mirror warning messages and tidy dmeventd syslog output.
- Propagate nosync flag around cluster.
- Allow vgreduce to handle mirror log failures.
- Add --corelog to lvcreate and lvconvert.
- Create a log header for replacement in-sync mirror log.
- Use set_lv() and dev_set() to wipe sections of devices.
- Add mirror_library description to example.conf.
- Fix uuid_from_num() buffer overrun.
- Increase maximum stripe size limit to physical extent size for lvm2 metadata.
- Fix activation code to check for pre-existing mirror logs.
- Ignore empty strings in config files.
- Require non-zero regionsize and document parameter on lvcreate man page.
- Invalidate cache if composition of VG changed externally.
-
--------------------------------------------------------------------
-Wed Apr 26 10:01:52 CEST 2006 - hare@suse.de
-
-- add LVM_DEVICE_TIMEOUT sysconfig variable to make sure
- udev has finished processing (#149979)
-- Fix init script dependencies
-
--------------------------------------------------------------------
-Mon Apr 24 18:32:56 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.05
- Fix vgid string termination in recent cache code
-
--------------------------------------------------------------------
-Thu Apr 20 17:11:07 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.04
- Check for libsepol.
- Add some cflow & scope support.
- Separate out DEFS from CFLAGS.
- Remove inlines and use unique function names.
-
--------------------------------------------------------------------
-Wed Apr 19 09:48:51 CEST 2006 - fehr@suse.de
-
-- update to new version 2.02.03
- vgrename accepts vgid and exported VG.
- Add --partial to pvs.
- When choosing between identically-named VGs, also consider creation_host.
- Provide total log suppression with 2.
- Fix vgexport/vgimport to set/reset PV exported flag so pv_attr is correct.
- Add vgid to struct physical_volume and pass with vg_name to some functions.
- If two or more VGs are found with the same name, use one that is not exported.
- Whenever vgname is captured, also capture vgid and whether exported.
- Remove an incorrect unlock_vg() from process_each_lv().
- Update extent size information in vgchange and vgcreate man pages.
- Introduce origin_from_cow() and lv_is_visible().
- pvremove without -f now fails if there's no PV label.
- Support lvconvert -s.
- Suppress locking library load failure message if --ignorelockingfailure.
- Propagate partial mode around cluster.
- Fix archive file expiration.
- Fix dmeventd build.
- clvmd now uses libcman rather than cman ioctls.
- clvmd will allow new cman to shutdown on request.
-
--------------------------------------------------------------------
-Thu Apr 6 15:57:04 CEST 2006 - fehr@suse.de
-
-- add option --mknodes to vgscan call in /etc/init.d/boot.lvm to
- avoid potential inconsistencies in minor number of dm devices after
- reboot when root fs is LVM LV (#139740)
-
--------------------------------------------------------------------
-Tue Mar 14 11:25:42 CET 2006 - fehr@suse.de
-
-- update to new version 2.02.02
- Add %.so: %.a make template rule.
- Switchover library building to use LIB_SUFFIX.
- Only do lockfs filesystem sync when suspending snapshots.
- Always print warning if activation is disabled.
- vgreduce removes mirror images.
- Add --mirrorsonly to vgreduce.
- vgreduce replaces active LVs with error segment before removing them.
- Set block_on_error parameter if available.
- Add target_version.
- Add details to format1 'Invalid LV in extent map' error message.
- Fix lvscan snapshot full display.
- Bring lvdisplay man page example into line.
- Add mirror dmeventd library.
- Add some activation logic to remove_mirror_images().
- lvconvert can remove specified PVs from a mirror.
- lvconvert turns an existing LV into a mirror.
- Allow signed mirrors arguments.
- Move create_mirror_log() into toollib.
- Determine parallel PVs to avoid with ALLOC_NORMAL allocation.
- Fix lv_empty.
-
--------------------------------------------------------------------
-Wed Jan 25 21:38:06 CET 2006 - mls@suse.de
-
-- converted neededforbuild to BuildRequires
-
--------------------------------------------------------------------
-Mon Dec 19 11:19:41 CET 2005 - fehr@suse.de
-
-- add new binary /sbin/lvconvert to file list
-
--------------------------------------------------------------------
-Tue Dec 13 13:09:21 CET 2005 - fehr@suse.de
-
-- add patch lvm-lock.diff to fix bug #138128
-
--------------------------------------------------------------------
-Tue Dec 6 16:10:12 CET 2005 - fehr@suse.de
-
-- update to new version 2.02.01
-
--------------------------------------------------------------------
-Tue Nov 8 12:05:32 CET 2005 - fehr@suse.de
-
-- add fix_striped_old_format.diff to allow striped volumes with
- old metadata format (#130433)
-- add fix_dm_as_pv.diff to allow usage of dm devices as PVs (#129960)
-
--------------------------------------------------------------------
-Mon Oct 17 12:38:18 CEST 2005 - fehr@suse.de
-
-- update to new version 2.01.15
-
--------------------------------------------------------------------
-Mon Sep 26 13:39:41 CEST 2005 - fehr@suse.de
-
-- fix bug in pvscan.c with PVs larger than 2TB in VGs
-
--------------------------------------------------------------------
-Thu Aug 4 14:49:51 CEST 2005 - fehr@suse.de
-
-- update to new version 2.01.14
-
--------------------------------------------------------------------
-Mon Jul 18 19:05:08 CEST 2005 - fehr@suse.de
-
-- update to new version 2.01.13
-
--------------------------------------------------------------------
-Thu Jun 16 10:21:03 CEST 2005 - fehr@suse.de
-
-- update to new version 2.01.12
-
--------------------------------------------------------------------
-Wed Jun 15 13:36:23 CEST 2005 - meissner@suse.de
-
-- add libselinux to nfb to enable selinux support.
-- use RPM_OPT_FLAGS.
-
--------------------------------------------------------------------
-Tue Jun 14 10:55:51 CEST 2005 - fehr@suse.de
-
-- update to new version 2.01.11
-
--------------------------------------------------------------------
-Wed May 4 11:01:23 CEST 2005 - fehr@suse.de
-
-- update to new version 2.01.10
-
--------------------------------------------------------------------
-Mon Apr 11 12:43:23 CEST 2005 - fehr@suse.de
-
-- use -y instead of -Y in options for call to fillup_and_insserv
- (#76689)
-- update to new version 2.01.09
-
--------------------------------------------------------------------
-Wed Mar 9 11:12:58 CET 2005 - fehr@suse.de
-
-- update to new version 2.01.07
-
--------------------------------------------------------------------
-Mon Mar 7 12:03:14 CET 2005 - fehr@suse.de
-
-- update to new version 2.01.06
-
--------------------------------------------------------------------
-Thu Feb 10 16:28:53 CET 2005 - fehr@suse.de
-
-- update to new version 2.01.04
-
--------------------------------------------------------------------
-Wed Feb 2 13:01:12 CET 2005 - fehr@suse.de
-
-- update to new version 2.01.03
-
--------------------------------------------------------------------
-Mon Jan 24 12:08:59 CET 2005 - fehr@suse.de
-
-- update to new version 2.01.02
-
--------------------------------------------------------------------
-Thu Jan 20 14:48:58 CET 2005 - fehr@suse.de
-
-- update to new version 2.01.01
-
--------------------------------------------------------------------
-Wed Jan 19 11:13:53 CET 2005 - fehr@suse.de
-
-- update to new version 2.01.00
-
--------------------------------------------------------------------
-Tue Jan 11 17:41:04 CET 2005 - fehr@suse.de
-
-- update to new version 2.00.33
-
--------------------------------------------------------------------
-Wed Jan 05 12:33:00 CET 2005 - arvin@suse.de
-
-- update to new version 2.00.32
-
--------------------------------------------------------------------
-Fri Dec 17 10:12:03 CET 2004 - arvin@suse.de
-
-- fixed -s option of vgdisplay (bug #49177)
-
--------------------------------------------------------------------
-Mon Nov 29 13:01:31 CET 2004 - fehr@suse.de
-
-- update to new version 2.00.29
-
--------------------------------------------------------------------
-Thu Nov 25 11:39:49 CET 2004 - fehr@suse.de
-
-- update to new version 2.00.27
-
--------------------------------------------------------------------
-Wed Nov 24 12:40:10 CET 2004 - fehr@suse.de
-
-- update to new version 2.00.26
-
--------------------------------------------------------------------
-Wed Sep 29 17:24:52 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.25
-
--------------------------------------------------------------------
-Wed Sep 22 17:40:28 CEST 2004 - fehr@suse.de
-
-- prevent buggy macro for MAJOR in kdev_t.h creep into code via
- include of linux/fs.h
-
--------------------------------------------------------------------
-Mon Sep 20 11:45:30 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.24
-
--------------------------------------------------------------------
-Thu Sep 16 15:03:58 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.23
-
--------------------------------------------------------------------
-Mon Sep 6 12:09:54 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.22
-
--------------------------------------------------------------------
-Mon Aug 23 12:46:37 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.21
-- new version obsoletes lvm2-vgscan.patch
-
--------------------------------------------------------------------
-Wed Jul 14 15:21:48 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.20
-
--------------------------------------------------------------------
-Mon Jun 7 11:45:15 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.16
-- add forgotten patch no-inc-audit.diff needed for STABLE
-
--------------------------------------------------------------------
-Mon May 24 14:14:37 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.15 to fix bug #41020
-
--------------------------------------------------------------------
-Mon May 24 08:31:31 CEST 2004 - hare@suse.de
-
-- Fixed vgscan on S/390 (readdir returned DT_UNKNOWN)
-
--------------------------------------------------------------------
-Thu May 13 17:49:47 CEST 2004 - fehr@suse.de
-
-- ignore udev names in default configuration to prevent yast2
- confusion (#36869)
-
--------------------------------------------------------------------
-Mon Apr 19 18:09:49 CEST 2004 - fehr@suse.de
-
-- accept additional devices (IDE->64, iseries/vd->8, #39114)
-
--------------------------------------------------------------------
-Thu Apr 1 10:28:39 CEST 2004 - fehr@suse.de
-
-- update to new version 2.00.09 (fixes #34657 and #36877)
-
--------------------------------------------------------------------
-Tue Mar 2 02:03:07 CET 2004 - ro@suse.de
-
-- boot.lvm: root-fs is mounted-rw by boot.rootfsck
-
--------------------------------------------------------------------
-Thu Feb 26 20:14:53 CET 2004 - fehr@suse.de
-
-- skip cdroms and device with zero size on probing
-
--------------------------------------------------------------------
-Wed Feb 4 10:58:46 CET 2004 - fehr@suse.de
-
-- update to new version 2.00.08
-- now lvm2 obsoletes lvm
-
--------------------------------------------------------------------
-Thu Sep 18 13:05:20 CEST 2003 - fehr@suse.de
-
-- fix boot.lvm to cope with LABEL= and UUID= in /etc/fstab
- also check reiser filesystem (#31060)
-
--------------------------------------------------------------------
-Wed Sep 17 16:20:18 CEST 2003 - fehr@suse.de
-
-- update to new version 2.00.07
-
--------------------------------------------------------------------
-Thu Aug 21 10:00:04 CEST 2003 - fehr@suse.de
-
-- update to new version 2.00.06
-
--------------------------------------------------------------------
-Mon Aug 18 17:41:31 CEST 2003 - garloff@suse.de
-
-- (#29083) Add # X-UnitedLinux-Should-Start: boot.scsidev
-
--------------------------------------------------------------------
-Tue Jul 1 16:13:06 CEST 2003 - fehr@suse.de
-
-- created initial version of a SuSE package
-
--------------------------------------------------------------------
diff --git a/lvm2-clvm.spec b/lvm2-clvm.spec
deleted file mode 100644
index c574850..0000000
--- a/lvm2-clvm.spec
+++ /dev/null
@@ -1,248 +0,0 @@
-#
-# spec file for package lvm2-clvm
-#
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
-#
-# All modifications and additions to the file contributed by third parties
-# remain the property of their copyright owners, unless otherwise agreed
-# upon. The license for this file, and modifications and additions to the
-# file, is the same license as for the pristine package itself (unless the
-# license for the pristine package is not an Open Source License, in which
-# case the license is the MIT License). An "Open Source License" is a
-# license that conforms to the Open Source Definition (Version 1.9)
-# published by the Open Source Initiative.
-
-# Please submit bugfixes or comments via https://bugs.opensuse.org/
-#
-
-
-%define _supportsanlock 0
-
-%define dlm_version 3.99.1
-%if 0%{_supportsanlock} == 1
-%define sanlock_version 3.3.0
-%endif
-
-### COMMON-DEF-BEGIN ###
-%define lvm2_version 2.02.180
-%define device_mapper_version 1.02.149
-%define thin_provisioning_version 0.7.0
-### COMMON-DEF-END ###
-Name: lvm2-clvm
-Version: %{lvm2_version}
-Release: 0
-Summary: Clustered LVM2
-License: GPL-2.0-or-later AND LGPL-2.1-or-later
-Group: Productivity/Clustering/HA
-Url: http://sources.redhat.com/cluster/clvm/
-Source: ftp://sources.redhat.com/pub/lvm2/LVM2.%{lvm2_version}.tgz
-Source1: ftp://sources.redhat.com/pub/lvm2/LVM2.%{lvm2_version}.tgz.asc
-# To detect modprobe during build
-BuildRequires: kmod-compat
-BuildRequires: libaio-devel
-BuildRequires: libcorosync-devel
-BuildRequires: libdlm-devel >= %{dlm_version}
-BuildRequires: pkgconfig
-%if 0%{_supportsanlock} == 1
-BuildRequires: sanlock-devel >= %{sanlock_version}
-%endif
-BuildRequires: thin-provisioning-tools >= %{thin_provisioning_version}
-BuildRequires: pkgconfig(blkid)
-BuildRequires: pkgconfig(devmapper)
-BuildRequires: pkgconfig(libudev)
-Requires: corosync
-Requires: device-mapper >= %{device_mapper_version}
-Requires: lvm2 = %{version}
-Requires: lvm2-cmirrord
-Obsoletes: cmirrord < %{version}
-Provides: cmirrord = %{version}
-### COMMON-PATCH-BEGIN ###
-# Upstream patches
-Patch0001: bug-1114113_metadata-prevent-writing-beyond-metadata-area.patch
-Patch0002: bug-1122666_devices-drop-open-error-message.patch
-Patch0003: bug-1137296_pvremove-vgextend-fix-using-device-aliases-with-lvmetad.patch
-Patch0004: bug-1135984_cache-support-no_discard_passdown.patch
-
-# SUSE patches: 1000+ for LVM
-# Never upstream
-Patch1001: cmirrord_remove_date_time_from_compilation.patch
-Patch1002: fate-309425_display-dm-name-for-lv-name.patch
-Patch1003: fate-31841_fsadm-add-support-for-btrfs.patch
-Patch1004: bug-935623_dmeventd-fix-dso-name-wrong-compare.patch
-Patch1005: bsc1080299-detect-clvm-properly.patch
-Patch1006: bug-998893_make_pvscan_service_after_multipathd.patch
-
-#SUSE patches 2000+ for device mapper, udev rules
-Patch2001: bug-1012973_simplify-special-case-for-md-in-69-dm-lvm-metadata.patch
-### COMMON-PATCH-END ###
-
-# Patches for clvmd and cmirrord
-Patch3001: bug-978055_clvmd-try-to-refresh-device-cache-on-the-first-failu.patch
-
-%description
-A daemon for using LVM2 Logival Volumes in a clustered environment.
-
-%prep
-%setup -q -n LVM2.%{lvm2_version}
-
-### COMMON-PREP-BEGIN ###
-%patch0001 -p1
-%patch0002 -p1
-%patch0003 -p1
-%patch0004 -p1
-%patch1001 -p1
-%patch1002 -p1
-%patch1003 -p1
-%patch1004 -p1
-%patch1005 -p1
-%patch1006 -p1
-%patch2001 -p1
-### COMMON-PREP-END ###
-
-%patch3001 -p1
-
-%build
-extra_opts="
- --enable-applib
- --enable-blkid_wiping
- --enable-cmdlib
- --enable-lvmetad
- --enable-lvmpolld
- --enable-realtime
- --with-default-locking-dir=/run/lock/lvm
- --with-default-pid-dir=/run
- --with-default-run-dir=/run/lvm
- --with-clvmd=corosync
- --with-cluster=internal
- --enable-cmirrord
- --enable-lvmlockd-dlm
-%if 0%{_supportsanlock} == 1
- --enable-lvmlockd-sanlock
-%endif
-"
-
-### COMMON-CONFIG-BEGIN ###
-export PATH=$PATH:/sbin:%{_prefix}/sbin
-# Why this messy fix here? someone released a wrong version...
-sed -ie "s/%{device_mapper_version}/1.03.01/g" VERSION_DM
-%configure \
- --enable-dmeventd \
- --enable-cmdlib \
- --enable-udev_rules \
- --enable-udev_sync \
- --with-udev-prefix="%{_prefix}/" \
- --enable-selinux \
- --enable-pkgconfig \
- --with-usrlibdir=%{_libdir} \
- --with-usrsbindir=%{_sbindir} \
- --with-default-dm-run-dir=/run \
- --with-tmpfilesdir=%{_tmpfilesdir} \
- --with-thin=internal \
- --with-device-gid=6 \
- --with-device-mode=0640 \
- --with-device-uid=0 \
- --with-dmeventd-path=%{_sbindir}/dmeventd \
- --with-thin-check=%{_sbindir}/thin_check \
- --with-thin-dump=%{_sbindir}/thin_dump \
- --with-thin-repair=%{_sbindir}/thin_repair \
- $extra_opts
-### COMMON-CONFIG-END ###
-
-%make_build
-
-%install
-make DESTDIR=%{buildroot} \
- install_cluster \
- install_systemd_units install_systemd_generators
-make DESTDIR=%{buildroot} install -C daemons/lvmlockd
-make DESTDIR=%{buildroot} install -C daemons/cmirrord
-
-# lvmlockd does not have separate target install the mans by hand for now
-install -m0644 -D man/lvmlockd.8 %{buildroot}%{_mandir}/man8/lvmlockd.8
-install -m0644 -D man/lvmlockctl.8 %{buildroot}%{_mandir}/man8/lvmlockctl.8
-
-# rc services symlinks
-ln -s service %{buildroot}%{_sbindir}/rclvm2-cluster-activation
-ln -s service %{buildroot}%{_sbindir}/rclvm2-clvmd
-ln -s service %{buildroot}%{_sbindir}/rclvm2-cmirrord
-ln -s service %{buildroot}%{_sbindir}/rclvm2-lvmlockd
-ln -s service %{buildroot}%{_sbindir}/rclvm2-lvmlocking
-
-# remove files from lvm2 split due to systemd_generators picking them up
-rm %{buildroot}%{_unitdir}/blk-availability.service
-rm %{buildroot}%{_unitdir}/dm-event.service
-rm %{buildroot}%{_unitdir}/dm-event.socket
-rm %{buildroot}%{_unitdir}/lvm2-monitor.service
-rm %{buildroot}%{_mandir}/man8/lvm2-activation-generator.8
-rm %{buildroot}%{_libexecdir}/systemd/system-generators/lvm2-activation-generator
-rm %{buildroot}%{_unitdir}/lvm2-lvmetad.service
-rm %{buildroot}%{_unitdir}/lvm2-lvmetad.socket
-rm %{buildroot}%{_unitdir}/lvm2-lvmpolld.service
-rm %{buildroot}%{_unitdir}/lvm2-lvmpolld.socket
-rm %{buildroot}%{_unitdir}/lvm2-pvscan@.service
-
-%files
-%defattr(-,root,root)
-%{_sbindir}/clvmd
-%{_sbindir}/rclvm2-cluster-activation
-%{_sbindir}/rclvm2-clvmd
-%{_unitdir}/lvm2-clvmd.service
-%{_unitdir}/lvm2-cluster-activation.service
-%{_libexecdir}/systemd/lvm2-cluster-activation
-%{_mandir}/man8/clvmd.8%{ext_man}
-
-%package -n lvm2-cmirrord
-Summary: Clustered RAID 1 support using device-mapper and corosync
-Group: Productivity/Clustering/HA
-Requires: corosync
-Requires: device-mapper >= %{device_mapper_version}
-Requires: lvm2 = %{version}
-Requires: lvm2-clvm
-
-%description -n lvm2-cmirrord
-A daemon for using LVM2 Logival Volumes in a clustered environment.
-
-%files -n lvm2-cmirrord
-%defattr(-,root,root)
-%{_sbindir}/cmirrord
-%{_libexecdir}/systemd/system/lvm2-cmirrord.service
-%{_sbindir}/rclvm2-cmirrord
-%{_mandir}/man8/cmirrord.8%{ext_man}
-
-%package -n lvm2-lockd
-Summary: LVM locking daemon
-Group: Productivity/Clustering/HA
-Recommends: libdlm >= %{dlm_version}
-Requires: lvm2 = %{version}
-%if 0%{_supportsanlock} == 1
-Requires: sanlock >= %{sanlock_version}
-%endif
-%{?systemd_requires}
-
-%description -n lvm2-lockd
-LVM commands use lvmlockd to coordinate access to shared storage.
-
-%pre -n lvm2-lockd
-%service_add_pre lvm2-lvmlockd.service lvm2-lvmlocking.service
-
-%post -n lvm2-lockd
-%service_add_post lvm2-lvmlockd.service lvm2-lvmlocking.service
-
-%preun -n lvm2-lockd
-%service_del_preun lvm2-lvmlockd.service lvm2-lvmlocking.service
-
-%postun -n lvm2-lockd
-%service_del_postun lvm2-lvmlockd.service lvm2-lvmlocking.service
-
-%files -n lvm2-lockd
-%defattr(-,root,root,)
-%{_sbindir}/lvmlockd
-%{_sbindir}/lvmlockctl
-%{_mandir}/man8/lvmlockd.8%{ext_man}
-%{_mandir}/man8/lvmlockctl.8%{ext_man}
-%{_unitdir}/lvm2-lvmlockd.service
-%{_unitdir}/lvm2-lvmlocking.service
-%{_sbindir}/rclvm2-lvmlockd
-%{_sbindir}/rclvm2-lvmlocking
-
-%changelog
diff --git a/lvm2.changes b/lvm2.changes
index 32b56e9..e36d3fe 100644
--- a/lvm2.changes
+++ b/lvm2.changes
@@ -1,3 +1,49 @@
+-------------------------------------------------------------------
+Mon Sep 9 12:00:00 UTC 2019 - heming.zhao@suse.com
+
+- Update lvm2.spec: make baselibs.conf to a common source.
+
+-------------------------------------------------------------------
+Mon Sep 9 11:00:25 UTC 2019 - ghe@suse.com
+
+- Avoid creation of mixed-blocksize PV on LVM volume groups (bsc#1149408)
+ + bug-1149408_Fix-rounding-writes-up-to-sector-size.patch
+ + bug-1149408_vgcreate-vgextend-restrict-PVs-with-mixed-block-size.patch
+- Update lvm.conf files
+ - add devices/allow_mixed_block_sizes item
+
+-------------------------------------------------------------------
+Mon Sep 02 11:21:03 UTC 2019 - heming.zhao@suse.com
+
+- Update to LVM2.2.03.05
+ - To drop lvm2-clvm and lvm2-cmirrord rpms (jsc#PM-1324)
+ - Fix Out of date package (bsc#1111734)
+ - Fix occasional slow shutdowns with kernel 5.0.0 and up (bsc#1137648)
+ - Remove clvmd
+ - Remove lvmlib (api)
+ - Remove lvmetad
+- Drop patches that have been merged into upstream
+ - bug-1114113_metadata-prevent-writing-beyond-metadata-area.patch
+ - bug-1137296_pvremove-vgextend-fix-using-device-aliases-with-lvmetad.patch
+ - bug-1135984_cache-support-no_discard_passdown.patch
+- Drop patches that have been nonexist/unsupport in upstream
+ - bsc1080299-detect-clvm-properly.patch
+ - bug-998893_make_pvscan_service_after_multipathd.patch
+ - bug-978055_clvmd-try-to-refresh-device-cache-on-the-first-failu.patch
+ - bug-950089_test-fix-lvm2-testsuite-build-error.patch
+ - bug-1072624_test-lvmetad_dump-always-timed-out-when-using-nc.patch
+ - tests-specify-python3-as-the-script-interpreter.patch
+- Update spec files
+ - merge device-mapper, lvm2-lockd, lvm2 into one spec file
+ - clvmd/lvmlib (api)/lvmetad had been removed, so delete related context in spec file
+- Update lvm.conf files
+ - remove all lvmetad lines/keywords
+ - add event_activation
+ - remove fallback_to_lvm1 & related items
+ - remove locking_type/fallback_to_clustered_locking/fallback_to_local_locking items
+ - remove locking_library item
+ - remove all special filter rules
+
-------------------------------------------------------------------
Tue Jul 9 10:00:05 UTC 2019 - ghe@suse.com
diff --git a/lvm2.spec b/lvm2.spec
index b3172a7..2b26f89 100644
--- a/lvm2.spec
+++ b/lvm2.spec
@@ -17,75 +17,94 @@
%define _unpackaged_files_terminate_build 0
+%define libname libdevmapper1_03
+%define libname_event libdevmapper-event1_03
%define _udevdir %(pkg-config --variable=udevdir udev)
-%define applib liblvm2app2_2
-%define cmdlib liblvm2cmd2_02
-
-### COMMON-DEF-BEGIN ###
-%define lvm2_version 2.02.180
-%define device_mapper_version 1.02.149
+%define cmdlib liblvm2cmd2_03
+%define lvm2_version 2.03.05
+%define device_mapper_version 1.02.163
%define thin_provisioning_version 0.7.0
-### COMMON-DEF-END ###
-
-Name: lvm2
+%define _supportsanlock 0
+%define dlm_version 4.0
+%if 0%{_supportsanlock} == 1
+%define sanlock_version 3.3.0
+%endif
+%global flavor @BUILD_FLAVOR@%{nil}
+%define psuffix %{nil}
+%if "%{flavor}" == "devicemapper"
+%define psuffix -device-mapper
+%bcond_without devicemapper
+%else
+%bcond_with devicemapper
+%endif
+%if "%{flavor}" == "lockd"
+%define psuffix -lvmlockd
+%bcond_without lockd
+%else
+%bcond_with lockd
+%endif
+Name: lvm2%{psuffix}
Version: %{lvm2_version}
Release: 0
Summary: Logical Volume Manager Tools
License: GPL-2.0-or-later AND LGPL-2.1-or-later
Group: System/Base
-Url: http://www.sourceware.org/lvm2/
+URL: https://www.sourceware.org/lvm2/
Source: ftp://sources.redhat.com/pub/lvm2/LVM2.%{version}.tgz
Source1: lvm.conf
Source42: ftp://sources.redhat.com/pub/lvm2/LVM2.%{version}.tgz.asc
-BuildRequires: gcc-c++
-BuildRequires: libaio-devel
-BuildRequires: libcorosync-devel
-BuildRequires: libselinux-devel
-# To detect modprobe during build
-BuildRequires: kmod-compat
-BuildRequires: pkgconfig
-BuildRequires: readline-devel
-BuildRequires: thin-provisioning-tools >= %{thin_provisioning_version}
-BuildRequires: pkgconfig(blkid)
-BuildRequires: pkgconfig(libudev)
-BuildRequires: pkgconfig(systemd)
-BuildRequires: pkgconfig(udev)
-Requires: device-mapper >= %{device_mapper_version}
-Requires: modutils
-Requires(post): coreutils
-Requires(postun): coreutils
-Provides: lvm = %{version}
-BuildRoot: %{_tmppath}/%{name}-%{version}-build
-%{?systemd_requires}
-
-### COMMON-PATCH-BEGIN ###
+Source99: baselibs.conf
# Upstream patches
-Patch0001: bug-1114113_metadata-prevent-writing-beyond-metadata-area.patch
-Patch0002: bug-1122666_devices-drop-open-error-message.patch
-Patch0003: bug-1137296_pvremove-vgextend-fix-using-device-aliases-with-lvmetad.patch
-Patch0004: bug-1135984_cache-support-no_discard_passdown.patch
-
+Patch0001: bug-1122666_devices-drop-open-error-message.patch
+Patch0002: bug-1149408_Fix-rounding-writes-up-to-sector-size.patch
+Patch0003: bug-1149408_vgcreate-vgextend-restrict-PVs-with-mixed-block-size.patch
# SUSE patches: 1000+ for LVM
# Never upstream
Patch1001: cmirrord_remove_date_time_from_compilation.patch
Patch1002: fate-309425_display-dm-name-for-lv-name.patch
Patch1003: fate-31841_fsadm-add-support-for-btrfs.patch
Patch1004: bug-935623_dmeventd-fix-dso-name-wrong-compare.patch
-Patch1005: bsc1080299-detect-clvm-properly.patch
-Patch1006: bug-998893_make_pvscan_service_after_multipathd.patch
-
#SUSE patches 2000+ for device mapper, udev rules
Patch2001: bug-1012973_simplify-special-case-for-md-in-69-dm-lvm-metadata.patch
-### COMMON-PATCH-END ###
-
# 3000+ for test code
-Patch3001: bug-950089_test-fix-lvm2-testsuite-build-error.patch
-Patch3002: bug-1043040_test-fix-read-ahead-issues-in-test-scripts.patch
-Patch3003: bug-1072624_test-lvmetad_dump-always-timed-out-when-using-nc.patch
-Patch3004: tests-specify-python3-as-the-script-interpreter.patch
-
+Patch3001: bug-1043040_test-fix-read-ahead-issues-in-test-scripts.patch
# patches specif for lvm2.spec
Patch4001: bug-1037309_Makefile-skip-compliling-daemons-lvmlockd-directory.patch
+# To detect modprobe during build
+BuildRequires: kmod-compat
+BuildRequires: libaio-devel
+BuildRequires: pkgconfig
+BuildRequires: thin-provisioning-tools >= %{thin_provisioning_version}
+BuildRequires: pkgconfig(libudev)
+Requires: device-mapper >= %{device_mapper_version}
+Requires: modutils
+Requires(post): coreutils
+Requires(postun): coreutils
+Provides: lvm = %{version}
+Obsoletes: lvm2-cmirrord
+%{?systemd_requires}
+%if %{with devicemapper}
+BuildRequires: gcc-c++
+BuildRequires: suse-module-tools
+BuildRequires: pkgconfig(libselinux)
+BuildRequires: pkgconfig(libsepol)
+BuildRequires: pkgconfig(systemd)
+%else
+BuildRequires: libcorosync-devel
+BuildRequires: pkgconfig(blkid)
+%if %{with lockd}
+BuildRequires: libdlm-devel
+%if 0%{_supportsanlock} == 1
+BuildRequires: sanlock-devel >= %{sanlock_version}
+%endif
+%else
+BuildRequires: gcc-c++
+BuildRequires: libselinux-devel
+BuildRequires: readline-devel
+BuildRequires: pkgconfig(systemd)
+BuildRequires: pkgconfig(udev)
+%endif
+%endif
%description
Programs and man pages for configuring and using the LVM2 Logical
@@ -93,32 +112,24 @@ Volume Manager.
%prep
%setup -q -n LVM2.%{version}
-### COMMON-PREP-BEGIN ###
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
-%patch0004 -p1
%patch1001 -p1
%patch1002 -p1
%patch1003 -p1
%patch1004 -p1
-%patch1005 -p1
-%patch1006 -p1
%patch2001 -p1
-### COMMON-PREP-END ###
%patch3001 -p1
-%patch3002 -p1
-%patch3003 -p1
-%patch3004 -p1
+%if !%{with lockd}
%patch4001 -p1
+%endif
%build
+%if !%{with devicemapper} && !%{with lockd}
extra_opts="
- --enable-applib
--enable-blkid_wiping
- --enable-cmdlib
- --enable-lvmetad
--enable-lvmpolld
--enable-realtime
--with-cache=internal
@@ -126,10 +137,32 @@ extra_opts="
--with-default-pid-dir=/run
--with-default-run-dir=/run/lvm
--enable-cmirrord
+ --enable-fsadm
+ --disable-silent-rules
+ --enable-write_install
+ --with-vdo=internal
+ --with-vdo-format=%{_bindir}/vdoformat
"
+%endif
+%if %{with lockd}
+extra_opts="
+ --enable-blkid_wiping
+ --enable-lvmpolld
+ --enable-realtime
+ --with-default-locking-dir=/run/lock/lvm
+ --with-default-pid-dir=/run
+ --with-default-run-dir=/run/lvm
+ --with-cluster=internal
+ --enable-lvmlockd-dlm
+%if 0%{_supportsanlock} == 1
+ --enable-lvmlockd-sanlock
+%endif
+ --disable-silent-rules
+"
+%endif
### COMMON-CONFIG-BEGIN ###
-export PATH=$PATH:/sbin:%{_prefix}/sbin
+export PATH=$PATH:/sbin:%{_sbindir}
# Why this messy fix here? someone released a wrong version...
sed -ie "s/%{device_mapper_version}/1.03.01/g" VERSION_DM
%configure \
@@ -155,9 +188,60 @@ sed -ie "s/%{device_mapper_version}/1.03.01/g" VERSION_DM
$extra_opts
### COMMON-CONFIG-END ###
+%if %{with devicemapper}
+%make_build device-mapper
+%else
%make_build
+%endif
%install
+%if %{with devicemapper}
+make DESTDIR=%{buildroot} \
+ install_device-mapper \
+ install_systemd_units
+
+ln -s service %{buildroot}/%{_sbindir}/rcdm-event
+
+# provide 1.02 compat links for the shared libraries
+# this is needed for various binary packages
+ln -s libdevmapper.so.1.03 %{buildroot}/%{_libdir}/libdevmapper.so.1.02
+ln -s libdevmapper-event.so.1.03 %{buildroot}/%{_libdir}/libdevmapper-event.so.1.02
+
+# remove blkd, will be in lvm2 proper
+# without force on purpose to detect changes and fail if it happens
+rm %{buildroot}%{_sbindir}/blkdeactivate
+rm %{buildroot}%{_unitdir}/blk-availability.service
+rm %{buildroot}%{_unitdir}/lvm2-monitor.service
+rm %{buildroot}%{_mandir}/man8/blkdeactivate.8
+
+# compat symlinks in /sbin remove with Leap 43
+mkdir -p %{buildroot}/sbin
+ln -s %{_sbindir}/dmsetup %{buildroot}/sbin/dmsetup
+%else
+%if %{with lockd}
+make DESTDIR=%{buildroot} \
+ install_systemd_units install_systemd_generators
+make DESTDIR=%{buildroot} install -C daemons/lvmlockd
+
+# lvmlockd does not have separate target install the mans by hand for now
+install -m0644 -D man/lvmlockd.8 %{buildroot}%{_mandir}/man8/lvmlockd.8
+install -m0644 -D man/lvmlockctl.8 %{buildroot}%{_mandir}/man8/lvmlockctl.8
+
+# rc services symlinks
+ln -s service %{buildroot}%{_sbindir}/rclvm2-lvmlockd
+ln -s service %{buildroot}%{_sbindir}/rclvm2-lvmlocking
+
+# remove files from lvm2 split due to systemd_generators picking them up
+rm %{buildroot}%{_unitdir}/blk-availability.service
+rm %{buildroot}%{_unitdir}/dm-event.service
+rm %{buildroot}%{_unitdir}/dm-event.socket
+rm %{buildroot}%{_unitdir}/lvm2-monitor.service
+rm %{buildroot}%{_mandir}/man8/lvm2-activation-generator.8
+rm %{buildroot}%{_libexecdir}/systemd/system-generators/lvm2-activation-generator
+rm %{buildroot}%{_unitdir}/lvm2-lvmpolld.service
+rm %{buildroot}%{_unitdir}/lvm2-lvmpolld.socket
+rm %{buildroot}%{_unitdir}/lvm2-pvscan@.service
+%else
%make_install
make install_system_dirs DESTDIR=%{buildroot}
make install_systemd_units DESTDIR=%{buildroot}
@@ -169,17 +253,15 @@ install -m 644 %{SOURCE1} "%{buildroot}/%{_sysconfdir}/lvm/"
make -C test install DESTDIR=%{buildroot}
pushd "%{buildroot}/%{_libdir}"
-ln -sf liblvm2cmd.so.2.02 liblvm2cmd.so
-ln -sf liblvm2app.so.2.2 liblvm2app.so
+ln -sf liblvm2cmd.so.2.03 liblvm2cmd.so
for i in libdevmapper-event-lvm2{mirror,raid,snapshot,thin}; do
ln -sf "device-mapper/$i.so" "$i.so"
- ln -sf "device-mapper/$i.so" "$i.so.2.02"
+ ln -sf "device-mapper/$i.so" "$i.so.2.03"
done
popd
#rc compat symlinks
ln -s service %{buildroot}%{_sbindir}/rcblk-availability
-ln -s service %{buildroot}%{_sbindir}/rclvm2-lvmetad
ln -s service %{buildroot}%{_sbindir}/rclvm2-monitor
ln -s service %{buildroot}%{_sbindir}/rclvm2-lvmpolld
@@ -193,8 +275,8 @@ rm %{buildroot}%{_udevrulesdir}/95-dm-notify.rules
rm %{buildroot}%{_unitdir}/dm-event.socket
rm %{buildroot}%{_unitdir}/dm-event.service
# See bsc#1037309 for more info
-rm %{buildroot}%{_unitdir}/lvm2-lvmlockd.service
-rm %{buildroot}%{_unitdir}/lvm2-lvmlocking.service
+rm %{buildroot}%{_unitdir}/lvmlockd.service
+rm %{buildroot}%{_unitdir}/lvmlocks.service
rm %{buildroot}%{_includedir}/libdevmapper*.h
rm %{buildroot}%{_libdir}/libdevmapper.so.*
rm %{buildroot}%{_libdir}/libdevmapper-event.so.*
@@ -214,14 +296,169 @@ for i in {vg,pv,lv}*; do
ln -s %{_sbindir}/$i %{buildroot}/sbin/$i
done
popd
+%endif
+%endif
+%if %{with devicemapper}
+%package -n device-mapper
+Version: %{device_mapper_version}
+Release: 0
+Summary: Device Mapper Tools
+Group: System/Base
+Requires: thin-provisioning-tools >= %{thin_provisioning_version}
+Requires(post): coreutils
+
+%description -n device-mapper
+Programs and man pages for configuring and using the device mapper.
+
+%pre -n device-mapper
+%service_add_pre dm-event.service dm-event.socket
+
+%post -n device-mapper
+%service_add_post dm-event.service dm-event.socket
+%{?regenerate_initrd_post}
+
+%posttrans -n device-mapper
+%{?regenerate_initrd_posttrans}
+
+%preun -n device-mapper
+%service_del_preun dm-event.service dm-event.socket
+
+%postun -n device-mapper
+%service_del_postun dm-event.service dm-event.socket
+%{?regenerate_initrd_post}
+
+%files -n device-mapper
+%license COPYING COPYING.LIB
+%doc README
+%doc udev/12-dm-permissions.rules
+/sbin/dmsetup
+%{_sbindir}/dmsetup
+%{_sbindir}/dmeventd
+%{_sbindir}/dmstats
+%{_mandir}/man8/dmstats.8%{?ext_man}
+%{_mandir}/man8/dmsetup.8%{?ext_man}
+%{_mandir}/man8/dmeventd.8%{?ext_man}
+%{_udevrulesdir}/10-dm.rules
+%{_udevrulesdir}/13-dm-disk.rules
+%{_udevrulesdir}/95-dm-notify.rules
+%{_unitdir}/dm-event.socket
+%{_sbindir}/rcdm-event
+%{_unitdir}/dm-event.service
+
+%package -n %{libname}
+Version: %{device_mapper_version}
+Release: 0
+Summary: Library for device-mapper
+Group: System/Libraries
+Conflicts: %{name} < %{version}
+
+%description -n %{libname}
+Device mapper main shared library
+
+%files -n %{libname}
+%{_libdir}/libdevmapper.so.1.03
+%{_libdir}/libdevmapper.so.1.02
+
+%post -n %{libname}
+if [ -f /%{_lib}/libdevmapper.so.1.03 ]; then
+ # Special migration - the library is now in %{_libdir}, but up to the point where
+ # zypp removes the 'old' device-mapper package, the old library 'wins' the ldloader race
+ # resulting in binaries asking for the newer version still getting the old one.
+ # This in turn results in funny bugs like boo#1045396
+ # Remove /%{_lib}/libdevmapper.so.1.02 - and the run ldconfig
+ rm /%{_lib}/libdevmapper.so.1.03
+fi
+ /sbin/ldconfig
+
+%postun -n %{libname} -p /sbin/ldconfig
+
+%package -n %{libname_event}
+Version: %{device_mapper_version}
+Release: 0
+Summary: Event library for device-mapper
+Group: System/Libraries
+Conflicts: %{name} < %{version}
+
+%description -n %{libname_event}
+Device mapper event daemon shared library
+
+%files -n %{libname_event}
+%{_libdir}/libdevmapper-event.so.1.03
+%{_libdir}/libdevmapper-event.so.1.02
+
+%post -n %{libname_event} -p /sbin/ldconfig
+%postun -n %{libname_event} -p /sbin/ldconfig
+
+%package -n device-mapper-devel
+Version: %{device_mapper_version}
+Release: 0
+Summary: Development package for the device mapper
+Group: Development/Libraries/C and C++
+Requires: %{libname_event} = %{device_mapper_version}
+Requires: %{libname} = %{device_mapper_version}
+Requires: device-mapper = %{device_mapper_version}
+
+%description -n device-mapper-devel
+Files needed for software development using the device mapper
+
+%files -n device-mapper-devel
+%{_libdir}/libdevmapper.so
+%{_libdir}/libdevmapper-event.so
+%{_includedir}/libdevmapper.h
+%{_includedir}/libdevmapper-event.h
+%{_libdir}/pkgconfig/devmapper.pc
+%{_libdir}/pkgconfig/devmapper-event.pc
+
+%else
+%if %{with lockd}
+%package -n lvm2-lockd
+Summary: LVM locking daemon
+Group: System/Base
+Requires: corosync
+Requires: device-mapper >= %{device_mapper_version}
+Requires: lvm2 = %{version}
+Recommends: libdlm >= %{dlm_version}
+Obsoletes: lvm2-clvm
+%{?systemd_requires}
+%if 0%{_supportsanlock} == 1
+Requires: sanlock >= %{sanlock_version}
+%endif
+
+%description -n lvm2-lockd
+LVM commands use lvmlockd to coordinate access to shared storage.
+
+%pre -n lvm2-lockd
+%service_add_pre lvmlockd.service lvmlocks.service
+
+%post -n lvm2-lockd
+%service_add_post lvmlockd.service lvmlocks.service
+
+%preun -n lvm2-lockd
+%service_del_preun lvmlockd.service lvmlocks.service
+
+%postun -n lvm2-lockd
+%service_del_postun lvmlockd.service lvmlocks.service
+
+%files -n lvm2-lockd
+%defattr(-,root,root,)
+%{_sbindir}/lvmlockd
+%{_sbindir}/lvmlockctl
+%{_mandir}/man8/lvmlockd.8%{?ext_man}
+%{_mandir}/man8/lvmlockctl.8%{?ext_man}
+%{_unitdir}/lvmlockd.service
+%{_unitdir}/lvmlocks.service
+%{_sbindir}/rclvm2-lvmlockd
+%{_sbindir}/rclvm2-lvmlocking
+
+%else
%pre
-%service_add_pre blk-availability.service lvm2-monitor.service lvm2-lvmetad.socket lvm2-lvmetad.service lvm2-lvmpolld.service lvm2-lvmpolld.socket
+%service_add_pre blk-availability.service lvm2-monitor.service lvm2-lvmpolld.service lvm2-lvmpolld.socket
%post
/sbin/ldconfig
%{?regenerate_initrd_post}
-%service_add_post blk-availability.service lvm2-monitor.service lvm2-lvmetad.socket lvm2-lvmetad.service lvm2-lvmpolld.service lvm2-lvmpolld.socket
+%service_add_post blk-availability.service lvm2-monitor.service lvm2-lvmpolld.service lvm2-lvmpolld.socket
# Use %%tmpfiles_create when 13.2 is oldest in support scope
%{_bindir}/systemd-tmpfiles --create %{_tmpfilesdir}/lvm2.conf || :
@@ -229,25 +466,24 @@ popd
%{?regenerate_initrd_posttrans}
%preun
-%service_del_preun blk-availability.service lvm2-monitor.service lvm2-lvmetad.service lvm2-lvmpolld.service lvm2-lvmpolld.socket
+%service_del_preun blk-availability.service lvm2-monitor.service lvm2-lvmpolld.service lvm2-lvmpolld.socket
%postun
/sbin/ldconfig
%{?regenerate_initrd_post}
-%service_del_postun blk-availability.service lvm2-monitor.service lvm2-lvmetad.service lvm2-lvmpolld.service lvm2-lvmpolld.socket
+%service_del_postun blk-availability.service lvm2-monitor.service lvm2-lvmpolld.service lvm2-lvmpolld.socket
%files
-%defattr(-,root,root)
+%license COPYING COPYING.LIB
%doc README VERSION WHATS_NEW
%doc doc/lvm_fault_handling.txt
+
# Main binaries
%{_sbindir}/blkdeactivate
%{_sbindir}/fsadm
%{_sbindir}/lvm
-%{_sbindir}/lvmconf
%{_sbindir}/lvmconfig
%{_sbindir}/lvmdump
-%{_sbindir}/lvmetad
%{_sbindir}/lvmpolld
# Other files
%{_sbindir}/lvchange
@@ -293,15 +529,12 @@ popd
%{_sbindir}/vgscan
%{_sbindir}/vgsplit
%{_sbindir}/rcblk-availability
-%{_sbindir}/rclvm2-lvmetad
%{_sbindir}/rclvm2-lvmpolld
%{_sbindir}/rclvm2-monitor
# compat symlinks in /sbin
/sbin/lvm
-/sbin/lvmconf
/sbin/lvmconfig
/sbin/lvmdump
-/sbin/lvmetad
/sbin/lvmpolld
/sbin/lvchange
/sbin/lvconvert
@@ -345,67 +578,66 @@ popd
/sbin/vgs
/sbin/vgscan
/sbin/vgsplit
-%{_mandir}/man5/lvm.conf.5%{ext_man}
-%{_mandir}/man7/lvmcache.7%{ext_man}
-%{_mandir}/man7/lvmraid.7%{ext_man}
-%{_mandir}/man7/lvmreport.7%{ext_man}
-%{_mandir}/man7/lvmthin.7%{ext_man}
-%{_mandir}/man7/lvmsystemid.7%{ext_man}
-%{_mandir}/man8/fsadm.8%{ext_man}
-%{_mandir}/man8/lvchange.8%{ext_man}
-%{_mandir}/man8/lvconvert.8%{ext_man}
-%{_mandir}/man8/lvcreate.8%{ext_man}
-%{_mandir}/man8/lvdisplay.8%{ext_man}
-%{_mandir}/man8/lvextend.8%{ext_man}
-%{_mandir}/man8/lvm.8%{ext_man}
-%{_mandir}/man8/lvm2-activation-generator.8%{ext_man}
-%{_mandir}/man8/lvm-config.8%{ext_man}
-%{_mandir}/man8/lvmconfig.8%{ext_man}
-%{_mandir}/man8/lvm-dumpconfig.8%{ext_man}
-%{_mandir}/man8/lvmconf.8%{ext_man}
-%{_mandir}/man8/lvmdiskscan.8%{ext_man}
-%{_mandir}/man8/lvmdump.8%{ext_man}
-%{_mandir}/man8/lvm-fullreport.8%{ext_man}
-%{_mandir}/man8/lvmsadc.8%{ext_man}
-%{_mandir}/man8/lvmsar.8%{ext_man}
-%{_mandir}/man8/lvreduce.8%{ext_man}
-%{_mandir}/man8/lvremove.8%{ext_man}
-%{_mandir}/man8/lvrename.8%{ext_man}
-%{_mandir}/man8/lvresize.8%{ext_man}
-%{_mandir}/man8/lvs.8%{ext_man}
-%{_mandir}/man8/lvscan.8%{ext_man}
-%{_mandir}/man8/pvchange.8%{ext_man}
-%{_mandir}/man8/pvck.8%{ext_man}
-%{_mandir}/man8/pvcreate.8%{ext_man}
-%{_mandir}/man8/pvdisplay.8%{ext_man}
-%{_mandir}/man8/pvmove.8%{ext_man}
-%{_mandir}/man8/pvremove.8%{ext_man}
-%{_mandir}/man8/pvresize.8%{ext_man}
-%{_mandir}/man8/pvs.8%{ext_man}
-%{_mandir}/man8/pvscan.8%{ext_man}
-%{_mandir}/man8/vgcfgbackup.8%{ext_man}
-%{_mandir}/man8/vgcfgrestore.8%{ext_man}
-%{_mandir}/man8/vgchange.8%{ext_man}
-%{_mandir}/man8/vgck.8%{ext_man}
-%{_mandir}/man8/vgconvert.8%{ext_man}
-%{_mandir}/man8/vgcreate.8%{ext_man}
-%{_mandir}/man8/vgdisplay.8%{ext_man}
-%{_mandir}/man8/vgexport.8%{ext_man}
-%{_mandir}/man8/vgextend.8%{ext_man}
-%{_mandir}/man8/vgimport.8%{ext_man}
-%{_mandir}/man8/vgimportclone.8%{ext_man}
-%{_mandir}/man8/vgmerge.8%{ext_man}
-%{_mandir}/man8/vgmknodes.8%{ext_man}
-%{_mandir}/man8/vgreduce.8%{ext_man}
-%{_mandir}/man8/vgremove.8%{ext_man}
-%{_mandir}/man8/vgrename.8%{ext_man}
-%{_mandir}/man8/vgs.8%{ext_man}
-%{_mandir}/man8/vgscan.8%{ext_man}
-%{_mandir}/man8/vgsplit.8%{ext_man}
-%{_mandir}/man8/lvmetad.8%{ext_man}
-%{_mandir}/man8/blkdeactivate.8%{ext_man}
-%{_mandir}/man8/lvmpolld.8%{ext_man}
-%{_mandir}/man8/lvm-lvpoll.8%{ext_man}
+%{_mandir}/man5/lvm.conf.5%{?ext_man}
+%{_mandir}/man7/lvmcache.7%{?ext_man}
+%{_mandir}/man7/lvmraid.7%{?ext_man}
+%{_mandir}/man7/lvmreport.7%{?ext_man}
+%{_mandir}/man7/lvmthin.7%{?ext_man}
+%{_mandir}/man7/lvmsystemid.7%{?ext_man}
+%{_mandir}/man7/lvmvdo.7%{?ext_man}
+%{_mandir}/man8/fsadm.8%{?ext_man}
+%{_mandir}/man8/lvchange.8%{?ext_man}
+%{_mandir}/man8/lvconvert.8%{?ext_man}
+%{_mandir}/man8/lvcreate.8%{?ext_man}
+%{_mandir}/man8/lvdisplay.8%{?ext_man}
+%{_mandir}/man8/lvextend.8%{?ext_man}
+%{_mandir}/man8/lvm.8%{?ext_man}
+%{_mandir}/man8/lvm2-activation-generator.8%{?ext_man}
+%{_mandir}/man8/lvm-config.8%{?ext_man}
+%{_mandir}/man8/lvmconfig.8%{?ext_man}
+%{_mandir}/man8/lvm-dumpconfig.8%{?ext_man}
+%{_mandir}/man8/lvmdiskscan.8%{?ext_man}
+%{_mandir}/man8/lvmdump.8%{?ext_man}
+%{_mandir}/man8/lvm-fullreport.8%{?ext_man}
+%{_mandir}/man8/lvmsadc.8%{?ext_man}
+%{_mandir}/man8/lvmsar.8%{?ext_man}
+%{_mandir}/man8/lvreduce.8%{?ext_man}
+%{_mandir}/man8/lvremove.8%{?ext_man}
+%{_mandir}/man8/lvrename.8%{?ext_man}
+%{_mandir}/man8/lvresize.8%{?ext_man}
+%{_mandir}/man8/lvs.8%{?ext_man}
+%{_mandir}/man8/lvscan.8%{?ext_man}
+%{_mandir}/man8/pvchange.8%{?ext_man}
+%{_mandir}/man8/pvck.8%{?ext_man}
+%{_mandir}/man8/pvcreate.8%{?ext_man}
+%{_mandir}/man8/pvdisplay.8%{?ext_man}
+%{_mandir}/man8/pvmove.8%{?ext_man}
+%{_mandir}/man8/pvremove.8%{?ext_man}
+%{_mandir}/man8/pvresize.8%{?ext_man}
+%{_mandir}/man8/pvs.8%{?ext_man}
+%{_mandir}/man8/pvscan.8%{?ext_man}
+%{_mandir}/man8/vgcfgbackup.8%{?ext_man}
+%{_mandir}/man8/vgcfgrestore.8%{?ext_man}
+%{_mandir}/man8/vgchange.8%{?ext_man}
+%{_mandir}/man8/vgck.8%{?ext_man}
+%{_mandir}/man8/vgconvert.8%{?ext_man}
+%{_mandir}/man8/vgcreate.8%{?ext_man}
+%{_mandir}/man8/vgdisplay.8%{?ext_man}
+%{_mandir}/man8/vgexport.8%{?ext_man}
+%{_mandir}/man8/vgextend.8%{?ext_man}
+%{_mandir}/man8/vgimport.8%{?ext_man}
+%{_mandir}/man8/vgimportclone.8%{?ext_man}
+%{_mandir}/man8/vgmerge.8%{?ext_man}
+%{_mandir}/man8/vgmknodes.8%{?ext_man}
+%{_mandir}/man8/vgreduce.8%{?ext_man}
+%{_mandir}/man8/vgremove.8%{?ext_man}
+%{_mandir}/man8/vgrename.8%{?ext_man}
+%{_mandir}/man8/vgs.8%{?ext_man}
+%{_mandir}/man8/vgscan.8%{?ext_man}
+%{_mandir}/man8/vgsplit.8%{?ext_man}
+%{_mandir}/man8/blkdeactivate.8%{?ext_man}
+%{_mandir}/man8/lvmpolld.8%{?ext_man}
+%{_mandir}/man8/lvm-lvpoll.8%{?ext_man}
%{_udevdir}/rules.d/11-dm-lvm.rules
%{_udevdir}/rules.d/69-dm-lvm-metad.rules
%dir %{_sysconfdir}/lvm
@@ -419,6 +651,7 @@ popd
%{_sysconfdir}/lvm/profile/cache-mq.profile
%{_sysconfdir}/lvm/profile/cache-smq.profile
%{_sysconfdir}/lvm/profile/lvmdbusd.profile
+%{_sysconfdir}/lvm/profile/vdo-small.profile
%dir %{_sysconfdir}/lvm/cache
%ghost %{_sysconfdir}/lvm/cache/.cache
%dir %{_sysconfdir}/lvm/archive
@@ -426,8 +659,6 @@ popd
%{_tmpfilesdir}/%{name}.conf
%{_unitdir}/blk-availability.service
%{_unitdir}/lvm2-monitor.service
-%{_unitdir}/lvm2-lvmetad.socket
-%{_unitdir}/lvm2-lvmetad.service
%{_unitdir}/lvm2-pvscan@.service
%{_unitdir}/lvm2-lvmpolld.socket
%{_unitdir}/lvm2-lvmpolld.service
@@ -435,27 +666,14 @@ popd
%dir %{_libdir}/device-mapper
%{_libdir}/device-mapper/libdevmapper-event-lvm2*.so
%{_libdir}/libdevmapper-event-lvm2*.so
-%{_libdir}/libdevmapper-event-lvm2*.so.2.02
-
-%package -n %{applib}
-Summary: LVM2 application api library
-Group: System/Libraries
-Conflicts: %{name} < %{version}
-
-%description -n %{applib}
-LVM library for applications api
-
-%post -n %{applib} -p /sbin/ldconfig
-%postun -n %{applib} -p /sbin/ldconfig
-
-%files -n %{applib}
-%defattr(-,root,root)
-%{_libdir}/liblvm2app.so.*
+%{_libdir}/libdevmapper-event-lvm2*.so.2.03
%package -n %{cmdlib}
Summary: LVM2 command line library
Group: System/Libraries
Conflicts: %{name} < %{version}
+Obsoletes: liblvm2app2_2
+Obsoletes: liblvm2cmd2_02
%description -n %{cmdlib}
The lvm2 command line library allows building programs that manage
@@ -465,13 +683,11 @@ lvm devices without invoking a separate program.
%postun -n %{cmdlib} -p /sbin/ldconfig
%files -n %{cmdlib}
-%defattr(-,root,root)
%{_libdir}/liblvm2cmd.so.*
%package devel
Summary: Development files for LVM2
Group: Development/Libraries/C and C++
-Requires: %{applib} = %{version}
Requires: %{cmdlib} = %{version}
Requires: device-mapper-devel
Requires: lvm2 = %{version}
@@ -480,17 +696,12 @@ Requires: lvm2 = %{version}
This package provides development files for the LVM2 Logical Volume Manager.
%files devel
-%defattr(-,root,root)
%{_includedir}/lvm2cmd.h
-%{_includedir}/lvm2app.h
-%{_libdir}/pkgconfig/lvm2app.pc
-%{_libdir}/liblvm2app.so
%{_libdir}/liblvm2cmd.so
%package testsuite
Summary: LVM2 Testsuite
Group: Development/Libraries/C and C++
-Requires: %{applib} = %{version}
Requires: %{cmdlib} = %{version}
Requires: lvm2 = %{version}
@@ -498,9 +709,11 @@ Requires: lvm2 = %{version}
An extensive functional testsuite for the LVM2 Logical Volume Manager.
%files testsuite
-%defattr(-,root,root)
%{_datarootdir}/lvm2-testsuite/
%{_libexecdir}/lvm2-testsuite/
%{_bindir}/lvm2-testsuite
+%endif
+%endif
+
%changelog
diff --git a/pre_checkin.sh b/pre_checkin.sh
deleted file mode 100644
index 6a38a32..0000000
--- a/pre_checkin.sh
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/usr/bin/env bash
-
-master="lvm2.spec"
-sections="COMMON-DEF COMMON-PATCH COMMON-PREP COMMON-CONFIG"
-for slave in device-mapper.spec lvm2-clvm.spec; do
-{
- prev=1
- for section in $sections; do
- begin="/$section-BEGIN/"
- end="/$section-END/"
- sed -n -e "${prev},${begin}p" $slave
- sed -n -e "${begin},${end}p" $master | head -n -1 | tail -n +2
- prev=$end
- done
- sed -n -e "${prev},\$p" $slave
-} > $slave.tmp && mv $slave.tmp $slave
-done
-
-# changelogs
-
-cp lvm2.changes lvm2-clvm.changes
-cp lvm2.changes device-mapper.changes
diff --git a/tests-specify-python3-as-the-script-interpreter.patch b/tests-specify-python3-as-the-script-interpreter.patch
deleted file mode 100644
index 7fb354e..0000000
--- a/tests-specify-python3-as-the-script-interpreter.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 3f768d29ceb5427b6e8de4fe35e2c1001409d750 Mon Sep 17 00:00:00 2001
-From: Gang He
-Date: Wed, 20 Jun 2018 14:04:52 +0800
-Subject: [PATCH] tests: specify python3 as the script interpreter
-
-specify /usr/bin/python3 as the script interpreter in
-python_lvm_unit.py.in file, otherwise, there will be a building
-error in OBS.
-
-Signed-off-by: Gang He
----
- test/api/python_lvm_unit.py.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/test/api/python_lvm_unit.py.in b/test/api/python_lvm_unit.py.in
-index 78ced7e31..c6a7c9905 100755
---- a/test/api/python_lvm_unit.py.in
-+++ b/test/api/python_lvm_unit.py.in
-@@ -1,4 +1,4 @@
--#!@PYTHON@
-+#!/usr/bin/python3
-
- # Copyright (C) 2012-2013 Red Hat, Inc. All rights reserved.
- #
---
-2.12.3
-