]> git.99rst.org Git - openwrt-packages.git/commitdiff
lvm2: update to 2.03.42
authorDaniel Golle <redacted>
Thu, 20 Aug 2026 13:58:34 +0000 (14:58 +0100)
committerDaniel Golle <redacted>
Mon, 31 Aug 2026 16:30:15 +0000 (17:30 +0100)
LVM2 2.03.42:
- add --lockopt retries=N / removeretry=SECONDS to lvmlockd
- use lockd_lv lock probes for pvmove holder availability in shared VGs
- auto-revert metadata when initial pvmove mirror activation fails
- refuse activation of a pvmove-locked LV when pvmove runs on another
  node; allow pvmove --abort without args when using lvmlockd
- add cluster lock lifecycle for pvmove LV in shared VGs, and support
  for pvmove in a shared VG
- allow lvremove -f to remove pvmove-locked LVs after an interrupted
  pvmove; handle active pvmove during vgchange -an with force flags
- fix pvmove completion to use suspend+resume for DM table reload; fix
  deactivation cascade during active pvmove
- support inactive LVs in pvmove with metadata-only mirror insertion;
  kill orphaned polling process on pvmove --abort
- support formatting vdo volumes with the kernel vdo target (>=9.2);
  fix VDO index_memory_size_mb quantisation and report the minimum
  required pool size
- add --enable-asan/--enable-tsan build options

device-mapper 1.02.216:
- make libdm thread safe
- add use_kernel_format to dm_vdo_target_params
- introduce libdevmapper-san with --enable-asan/--enable-tsan
- parent table force reload when child device table changes

Refreshed 002-const-stdio.patch and 003-no-mallinfo.patch against the
new upstream source (make package/lvm2/refresh; hunk offsets only, no
content change) and gave both a proper git-am header block (From/Date/
Subject/Signed-off-by), crediting their original authorship (Daniel
Golle, 2015) with an accurate subject/body; they previously had none,
which the CI formality bot flagged. The header block was drafted via
git format-patch against a scratch commit of the pristine source, then
the whole patch re-refreshed through quilt so the diff body matches
what make package/lvm2/refresh actually produces byte for byte -
format-patch output alone does not survive OpenWrt's own refresh
(diff --git/index lines and full @@ context get stripped, the
trailing signature dropped), which is what the CI patch-format check
was rejecting before this.

Signed-off-by: Daniel Golle <redacted>
utils/lvm2/Makefile
utils/lvm2/patches/002-const-stdio.patch
utils/lvm2/patches/003-no-mallinfo.patch

index cb347c689e9ad42e44e62300a3ea7e2bf24bbe63..4ffbd3b97a9bcec8cac5348f458ed7ccf844040a 100644 (file)
@@ -9,15 +9,15 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=LVM2
-PKG_VERSION:=2.03.41
-PKG_VERSION_DM:=1.02.215
+PKG_VERSION:=2.03.42
+PKG_VERSION_DM:=1.02.216
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME).$(PKG_VERSION).tgz
 PKG_SOURCE_URL:=https://sourceware.org/pub/lvm2 \
                 https://www.mirrorservice.org/sites/sourceware.org/pub/lvm2
 
-PKG_HASH:=d58011b845df8ec13816ca13ea6c39d4cb3d038cd2d7d387acdf5681ad7d6637
+PKG_HASH:=352703ef5b72ebb22d4f250284a29b89fe64d4049c6bf64c693f9af486c8081e
 PKG_BUILD_DIR:=$(BUILD_DIR)/lvm2-$(BUILD_VARIANT)/$(PKG_NAME).$(PKG_VERSION)
 
 PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
index 577f7fc4ad7a7ac856488d8abecf9e23faa31541..ace0aa2bbcfcf57ce1b7ed031913fdf6f87ae3d3 100644 (file)
@@ -1,6 +1,23 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Daniel Golle <daniel@makrotopia.org>
+Date: Sat, 25 Apr 2015 23:34:05 +0200
+Subject: [PATCH] const-stdio: guard glibc-specific stream buffering behind
+ __GLIBC__
+
+create_toolcontext()/destroy_toolcontext() tune glibc's stdio stream
+buffering directly via glibc-only internals; _check_standard_fds() has
+a musl-compatible fallback path already available. Wrap the
+glibc-specific code in #ifdef __GLIBC__ so this builds against musl.
+
+Signed-off-by: Daniel Golle <daniel@makrotopia.org>
+---
+ lib/commands/toolcontext.c | 4 ++++
+ tools/lvmcmdline.c         | 7 +++++++
+ 2 files changed, 11 insertions(+)
+
 --- a/lib/commands/toolcontext.c
 +++ b/lib/commands/toolcontext.c
-@@ -1665,6 +1665,7 @@ struct cmd_context *create_toolcontext(c
+@@ -1666,6 +1666,7 @@ struct cmd_context *create_toolcontext(c
        /* FIXME Make this configurable? */
        reset_lvm_errno(1);
  
@@ -8,7 +25,7 @@
        /* Set in/out stream buffering before glibc */
        if (set_buffering
            && !cmd->running_on_valgrind /* Skipping within valgrind execution. */
-@@ -1709,6 +1710,7 @@ struct cmd_context *create_toolcontext(c
+@@ -1710,6 +1711,7 @@ struct cmd_context *create_toolcontext(c
        } else if (!set_buffering)
                /* Without buffering, must not use stdin/stdout */
                init_silent(1);
@@ -16,7 +33,7 @@
  
        /*
         * Environment variable LVM_SYSTEM_DIR overrides this below.
-@@ -2047,6 +2049,7 @@ void destroy_toolcontext(struct cmd_cont
+@@ -2048,6 +2050,7 @@ void destroy_toolcontext(struct cmd_cont
        if (cmd->cft_def_hash)
                dm_hash_destroy(cmd->cft_def_hash);
  
@@ -24,7 +41,7 @@
        if (!cmd->running_on_valgrind && cmd->linebuffer) {
                int flags;
                /* Reset stream buffering to defaults */
-@@ -2070,6 +2073,7 @@ void destroy_toolcontext(struct cmd_cont
+@@ -2071,6 +2074,7 @@ void destroy_toolcontext(struct cmd_cont
  
                free(cmd->linebuffer);
        }
index 3031d5c93fd435a4464c5d5edbde2bd8137ec56f..86b8421fa20f05ff48ca9229b0e0a6562662c8fd 100644 (file)
@@ -1,3 +1,21 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Daniel Golle <daniel@makrotopia.org>
+Date: Sat, 25 Apr 2015 23:34:05 +0200
+Subject: [PATCH] no-mallinfo: guard glibc mallinfo()/mlockall policy behind
+ __GLIBC__
+
+_allocate_memory()'s heap-growth probing uses glibc's MALLINFO/mallinfo(),
+which musl doesn't provide; guard it behind #ifdef __GLIBC__ and always
+grow by the full alloc_size on musl instead. Likewise _lock_mem() reads
+activation/use_mlockall from lvm.conf on glibc but always uses mlockall
+unconditionally on musl, where the glibc-specific heuristic this option
+tunes doesn't apply.
+
+Signed-off-by: Daniel Golle <daniel@makrotopia.org>
+---
+ lib/mm/memlock.c | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
 --- a/lib/mm/memlock.c
 +++ b/lib/mm/memlock.c
 @@ -209,12 +209,15 @@ static void _allocate_memory(void)
@@ -29,7 +47,7 @@
  
                if (area == MAX_AREAS && missing > 0) {
                        /* Too bad. Warn the user and proceed, as things are
-@@ -560,8 +566,13 @@ static void _lock_mem(struct cmd_context
+@@ -565,8 +571,13 @@ static void _lock_mem(struct cmd_context
         * will not block memory locked thread
         * Note: assuming _memlock_count_daemon is updated before _memlock_count
         */
git clone https://git.99rst.org/PROJECT