include $(TOPDIR)/rules.mk
PKG_NAME:=LVM2
-PKG_VERSION:=2.03.33
-PKG_VERSION_DM:=1.02.207
-PKG_RELEASE:=2
+PKG_VERSION:=2.03.40
+PKG_VERSION_DM:=1.02.209
+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:=be4babd8a986d73279f1e75fbb1d33cb41559b75c2063611781bfeb8c2def139
+PKG_HASH:=60c9bb5c0a109f20267bb40ba50c00c84a110fc14c129f21afb5566929bf5645
PKG_BUILD_DIR:=$(BUILD_DIR)/lvm2-$(BUILD_VARIANT)/$(PKG_NAME).$(PKG_VERSION)
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
--- a/lib/commands/toolcontext.c
+++ b/lib/commands/toolcontext.c
-@@ -1669,6 +1669,7 @@ struct cmd_context *create_toolcontext(u
+@@ -1668,6 +1668,7 @@ struct cmd_context *create_toolcontext(u
/* FIXME Make this configurable? */
reset_lvm_errno(1);
/* Set in/out stream buffering before glibc */
if (set_buffering
&& !cmd->running_on_valgrind /* Skipping within valgrind execution. */
-@@ -1713,6 +1714,7 @@ struct cmd_context *create_toolcontext(u
+@@ -1712,6 +1713,7 @@ struct cmd_context *create_toolcontext(u
} else if (!set_buffering)
/* Without buffering, must not use stdin/stdout */
init_silent(1);
/*
* Environment variable LVM_SYSTEM_DIR overrides this below.
-@@ -2047,6 +2049,7 @@ void destroy_toolcontext(struct cmd_cont
+@@ -2050,6 +2052,7 @@ void destroy_toolcontext(struct cmd_cont
if (cmd->cft_def_hash)
dm_hash_destroy(cmd->cft_def_hash);
if (!cmd->running_on_valgrind && cmd->linebuffer) {
int flags;
/* Reset stream buffering to defaults */
-@@ -2070,6 +2073,7 @@ void destroy_toolcontext(struct cmd_cont
+@@ -2073,6 +2076,7 @@ void destroy_toolcontext(struct cmd_cont
free(cmd->linebuffer);
}
--- a/tools/lvmcmdline.c
+++ b/tools/lvmcmdline.c
-@@ -3404,6 +3404,7 @@ int lvm_split(char *str, int *argc, char
+@@ -3394,6 +3394,7 @@ int lvm_split(char *str, int *argc, char
/* Make sure we have always valid filedescriptors 0,1,2 */
static int _check_standard_fds(void)
{
int err = is_valid_fd(STDERR_FILENO);
if (!is_valid_fd(STDIN_FILENO) &&
-@@ -3430,6 +3431,12 @@ static int _check_standard_fds(void)
+@@ -3420,6 +3421,12 @@ static int _check_standard_fds(void)
strerror(errno));
return 0;
}
--- a/lib/mm/memlock.c
+++ b/lib/mm/memlock.c
-@@ -199,12 +199,15 @@ static void _allocate_memory(void)
+@@ -201,12 +201,15 @@ static void _allocate_memory(void)
* memory on free(), this is good enough for our purposes.
*/
while (missing > 0) {
inf = MALLINFO();
if (hblks < inf.hblks) {
-@@ -214,9 +217,12 @@ static void _allocate_memory(void)
+@@ -216,9 +219,12 @@ static void _allocate_memory(void)
free(areas[area]);
_size_malloc_tmp /= 2;
} else {
}
+#endif
- if (area == max_areas && missing > 0) {
+ if (area == MAX_AREAS && missing > 0) {
/* Too bad. Warn the user and proceed, as things are
-@@ -540,8 +546,13 @@ static void _lock_mem(struct cmd_context
+@@ -552,8 +558,13 @@ static void _lock_mem(struct cmd_context
* will not block memory locked thread
* Note: assuming _memlock_count_daemon is updated before _memlock_count
*/