master - makefiles: ensure test dir can run unit-test
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=250e05a9656bf8888ac...
Commit: 250e05a9656bf8888ac6e399791c46369e77d667
Parent: a1e5b8832b99d977fda326e914a5d6d834316f42
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Sat Dec 1 00:44:22 2018 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Sat Dec 1 01:05:53 2018 +0100
makefiles: ensure test dir can run unit-test
---
test/Makefile.in | 4 ++--
test/unit/Makefile | 5 +++--
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/test/Makefile.in b/test/Makefile.in
index e471a11..69e2cfc 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -169,7 +169,7 @@ endif
run-unit-test unit-test:
@echo " [MAKE] $<"
- $(Q) $(MAKE) -C unit $(@)
+ $(Q) $(MAKE) -C $(top_builddir) $(@)
DATADIR = $(datadir)/lvm2-testsuite
EXECDIR = $(libexecdir)/lvm2-testsuite
@@ -314,7 +314,7 @@ lib/dm-version-expected: $(top_srcdir)/VERSION_DM .lib-dir-stamp
CMDS = lvm $(shell cat $(top_builddir)/tools/.commands 2>/dev/null)
LIB = $(addprefix lib/, $(LIB_SECURETEST) $(LIB_DMSECURETEST) $(LIB_SHARED) $(LIB_LOCAL) $(LIB_NOT) $(LIB_LINK_NOT) $(LIB_FLAVOURS))
-.tests-stamp: $(ALL) $(LIB) $(SUBDIRS) lib/version-expected lib/dm-version-expected
+.tests-stamp: $(ALL) $(LIB) $(SUBDIRS) lib/version-expected lib/dm-version-expected unit-test
@echo " [TEST-STAMP]"
@if test "$(srcdir)" != . ; then \
echo "Linking tests to builddir."; \
diff --git a/test/unit/Makefile b/test/unit/Makefile
index 909cef2..0ba98ee 100644
--- a/test/unit/Makefile
+++ b/test/unit/Makefile
@@ -41,9 +41,10 @@ CLEAN_TARGETS += $(UNIT_DEPENDS) $(UNIT_OBJECTS) \
test/unit/unit-test: $(UNIT_OBJECTS) lib/liblvm-internal.a libdaemon/client/libdaemonclient.a $(INTERNAL_LIBS)
@echo " [LD] $@"
$(Q) $(CC) $(CFLAGS) $(LDFLAGS) $(EXTRA_EXEC_LDFLAGS) \
- -o $@ $+ $(LIBS) $(DMEVENT_LIBS) $(SYSTEMD_LIBS) -lm -ldl -laio
+ -o $@ $+ $(DMEVENT_LIBS) $(SYSTEMD_LIBS) $(LIBS) -ldl -laio
-.PHONEY: run-unit-test
+.PHONEY: run-unit-test unit-test
+unit-test: test/unit/unit-test
run-unit-test: test/unit/unit-test
@echo Running unit tests
LD_LIBRARY_PATH=libdm test/unit/unit-test run
5 years, 5 months
master - makefiles: avoid clustering out
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=a1e5b8832b99d977fda...
Commit: a1e5b8832b99d977fda326e914a5d6d834316f42
Parent: 38c7ba315dd4aa2c87a777225b3f3ca333ebe350
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Fri Nov 30 21:59:08 2018 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Sat Dec 1 01:05:53 2018 +0100
makefiles: avoid clustering out
When ctags package is not installed, avoid cluttering output
from failing 'which' command.
---
Makefile.in | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/Makefile.in b/Makefile.in
index dd8a526..e64836f 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -179,7 +179,7 @@ endif
include $(top_srcdir)/device_mapper/Makefile
include $(top_srcdir)/base/Makefile
-ifneq ($(shell which ctags),)
+ifneq ($(shell which ctags 2>/dev/null),)
.PHONY: tags
tags:
test -z "$(shell find $(top_srcdir) -type f -name '*.[ch]' -newer tags 2>/dev/null | head -1)" || $(RM) tags
5 years, 5 months
master - device_mapper: move internal header to front
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=38c7ba315dd4aa2c87a...
Commit: 38c7ba315dd4aa2c87a777225b3f3ca333ebe350
Parent: 65eb29503b7cfe0f509c5b4d6146dd7961d1f8ba
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Sat Dec 1 00:43:53 2018 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Sat Dec 1 01:04:27 2018 +0100
device_mapper: move internal header to front
---
device_mapper/ioctl/libdm-iface.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/device_mapper/ioctl/libdm-iface.c b/device_mapper/ioctl/libdm-iface.c
index eb6e9db..f86d3b3 100644
--- a/device_mapper/ioctl/libdm-iface.c
+++ b/device_mapper/ioctl/libdm-iface.c
@@ -15,9 +15,11 @@
#include "base/memory/zalloc.h"
#include "device_mapper/misc/dmlib.h"
+#include "device_mapper/misc/dm-ioctl.h"
#include "device_mapper/ioctl/libdm-targets.h"
#include "device_mapper/libdm-common.h"
+#include <stdio.h> /* getline() */
#include <stddef.h>
#include <fcntl.h>
#include <dirent.h>
@@ -35,8 +37,6 @@
# define MKDEV(x,y) makedev(((dev_t)x),((dev_t)y))
#endif
-#include "device_mapper/misc/dm-ioctl.h"
-
/*
* Ensure build compatibility.
* The hard-coded versions here are the highest present
5 years, 5 months
master - libdm: optimize dm_pool_strndup
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=65eb29503b7cfe0f509...
Commit: 65eb29503b7cfe0f509c5b4d6146dd7961d1f8ba
Parent: 93dfb5dd3eb1b6f96f227cba961abfaa00d2f300
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Sat Dec 1 00:35:41 2018 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Sat Dec 1 01:04:27 2018 +0100
libdm: optimize dm_pool_strndup
---
libdm/mm/pool.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/libdm/mm/pool.c b/libdm/mm/pool.c
index a8fe732..26f43a7 100644
--- a/libdm/mm/pool.c
+++ b/libdm/mm/pool.c
@@ -59,11 +59,13 @@ char *dm_pool_strdup(struct dm_pool *p, const char *str)
char *dm_pool_strndup(struct dm_pool *p, const char *str, size_t n)
{
+ size_t slen = strlen(str);
+ size_t len = (slen < n) ? slen : n;
char *ret = dm_pool_alloc(p, n + 1);
if (ret) {
- strncpy(ret, str, n);
- ret[n] = '\0';
+ ret[len] = '\0';
+ memcpy(ret, str, len);
}
return ret;
5 years, 5 months
master - device_mapper: optimize dm_pool_strndup
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=93dfb5dd3eb1b6f96f2...
Commit: 93dfb5dd3eb1b6f96f227cba961abfaa00d2f300
Parent: c61c4271a4d9cc990f19614d1d2e7d203d57ebfd
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Sat Dec 1 00:34:29 2018 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Sat Dec 1 01:04:27 2018 +0100
device_mapper: optimize dm_pool_strndup
---
device_mapper/mm/pool.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/device_mapper/mm/pool.c b/device_mapper/mm/pool.c
index 20d7fd9..b6478c5 100644
--- a/device_mapper/mm/pool.c
+++ b/device_mapper/mm/pool.c
@@ -59,11 +59,13 @@ char *dm_pool_strdup(struct dm_pool *p, const char *str)
char *dm_pool_strndup(struct dm_pool *p, const char *str, size_t n)
{
+ size_t slen = strlen(str);
+ size_t len = (slen < n) ? slen : n;
char *ret = dm_pool_alloc(p, n + 1);
if (ret) {
- strncpy(ret, str, n);
- ret[n] = '\0';
+ ret[len] = '\0';
+ memcpy(ret, str, len);
}
return ret;
5 years, 5 months
master - device_mapper: fix incorrect dm_strncpy usage
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=c61c4271a4d9cc990f1...
Commit: c61c4271a4d9cc990f19614d1d2e7d203d57ebfd
Parent: 6a4a6a7cd7ef83b6283284637e3b28476fbc7712
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Sat Dec 1 00:41:24 2018 +0100
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Sat Dec 1 01:04:27 2018 +0100
device_mapper: fix incorrect dm_strncpy usage
Patch 668c9d0762fc6736a1e9372785544eda6a939806 introduced regression,
since the code here would actually always return failing result.
Replace it with more simple call to strndup().
---
device_mapper/vdo/status.c | 7 +------
1 files changed, 1 insertions(+), 6 deletions(-)
diff --git a/device_mapper/vdo/status.c b/device_mapper/vdo/status.c
index 53dfe4d..40e69ba 100644
--- a/device_mapper/vdo/status.c
+++ b/device_mapper/vdo/status.c
@@ -203,16 +203,11 @@ bool dm_vdo_status_parse(struct dm_pool *mem, const char *input,
goto bad;
}
- if (!(s->device = (!mem) ? malloc((e - b) + 1) : dm_pool_alloc(mem, (e - b) + 1))) {
+ if (!(s->device = (!mem) ? strndup(b, (te - b)) : dm_pool_alloc(mem, (te - b)))) {
_set_error(result, "out of memory");
goto bad;
}
- if (!dm_strncpy(s->device, b, te - b + 1)) {
- _set_error(result, "copy device");
- goto bad;
- }
-
b = _eat_space(te, e);
#define XX(p, f, fn) if (!_parse_field(&b, e, p, f, fn, result)) goto bad;
5 years, 5 months