master - systemd: use lvm binary insetad of command symlink in lvm2-pvscan.service
by Peter Rajnoha
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=239ba5bb04decc...
Commit: 239ba5bb04deccee83aa603efee11a9670f6f3fe
Parent: 81b096af34283cf91205b0e63f598ca92d625051
Author: Peter Rajnoha <prajnoha(a)redhat.com>
AuthorDate: Wed Apr 30 15:21:25 2014 +0200
Committer: Peter Rajnoha <prajnoha(a)redhat.com>
CommitterDate: Wed Apr 30 15:21:25 2014 +0200
systemd: use lvm binary insetad of command symlink in lvm2-pvscan.service
---
scripts/lvm2_pvscan_systemd_red_hat@.service.in | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/scripts/lvm2_pvscan_systemd_red_hat@.service.in b/scripts/lvm2_pvscan_systemd_red_hat@.service.in
index cdbbe40..7d3b291 100644
--- a/scripts/lvm2_pvscan_systemd_red_hat@.service.in
+++ b/scripts/lvm2_pvscan_systemd_red_hat@.service.in
@@ -11,5 +11,5 @@ Conflicts=shutdown.target
[Service]
Type=oneshot
RemainAfterExit=yes
-ExecStart=@sbindir@/pvscan --cache --activate ay %i
-ExecStop=@sbindir@/pvscan --cache %i
+ExecStart=@sbindir@/lvm pvscan --cache --activate ay %i
+ExecStop=@sbindir@/lvm pvscan --cache %i
9 years, 5 months
master - systemd: make sysinit.target to pull in lvm2-lvmetad.socket, not sockets.target
by Peter Rajnoha
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=81b096af34283c...
Commit: 81b096af34283cf91205b0e63f598ca92d625051
Parent: 4e559103d51e02c0d64d9cf88cee11d762feb65e
Author: Peter Rajnoha <prajnoha(a)redhat.com>
AuthorDate: Wed Apr 30 14:52:10 2014 +0200
Committer: Peter Rajnoha <prajnoha(a)redhat.com>
CommitterDate: Wed Apr 30 14:52:10 2014 +0200
systemd: make sysinit.target to pull in lvm2-lvmetad.socket, not sockets.target
The sysinit.target is ordered even before sockets.target and there
may be situations in which the lvmetad is needed early, for example
in rescue.target to activate some LVs on which mountpoints reside.
Also, like in the case of rescue.target, the sockets.target is not
pulled in (unless some other service pulls it in explicitly).
See also: https://bugzilla.redhat.com/show_bug.cgi?id=1087586#c26
for the summary of the problem.
---
scripts/lvm2_lvmetad_systemd_red_hat.socket.in | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/scripts/lvm2_lvmetad_systemd_red_hat.socket.in b/scripts/lvm2_lvmetad_systemd_red_hat.socket.in
index 9a46f50..071fd64 100644
--- a/scripts/lvm2_lvmetad_systemd_red_hat.socket.in
+++ b/scripts/lvm2_lvmetad_systemd_red_hat.socket.in
@@ -8,4 +8,4 @@ ListenStream=@DEFAULT_RUN_DIR(a)/lvmetad.socket
SocketMode=0600
[Install]
-WantedBy=sockets.target
+WantedBy=sysinit.target
9 years, 5 months
master - tests: lets the test continue
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=4e559103d51e02...
Commit: 4e559103d51e02c0d64d9cf88cee11d762feb65e
Parent: 94018279190d8f2d795a77482f3977f76687289b
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Wed Apr 30 10:16:35 2014 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Apr 30 10:26:31 2014 +0200
tests: lets the test continue
unwanted start of dmeventd was caused by seg_monitor status.
---
test/shell/listings.sh | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/test/shell/listings.sh b/test/shell/listings.sh
index 7d9c37e..79c9c89 100644
--- a/test/shell/listings.sh
+++ b/test/shell/listings.sh
@@ -73,7 +73,7 @@ lvcreate -T $vg/pool -I4 -i2 -l5 -V1P -n thin
not dd if=/dev/zero of="$DM_DEV_DIR/$vg/inval" bs=4K
invalid lvscan "$dev1"
lvdisplay --maps
-not lvscan --all
+lvscan --all
#COMM vgs with options from pvs still treats arguments as VGs (bz193543)
vgs -o pv_name,vg_name $vg
9 years, 5 months
master - cleanup: modules_needed only for devmapper
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=94018279190d8f...
Commit: 94018279190d8f2d795a77482f3977f76687289b
Parent: 62e8dd4f6ec73b6f94f66c3b14cdf3d80c06a2af
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Tue Apr 29 23:41:17 2014 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Apr 30 10:26:30 2014 +0200
cleanup: modules_needed only for devmapper
Drop compilation of modules_needed and add_target_lin
function when compiled without devmapper support.
Cleanup surrounding ifdefs.
---
lib/cache_segtype/cache.c | 50 ++++++++++++++------------------------------
lib/error/errseg.c | 4 +-
lib/mirror/mirrored.c | 8 +++---
lib/raid/raid.c | 35 ++++++++++++++++---------------
lib/snapshot/snapshot.c | 12 +++++-----
lib/thin/thin.c | 4 +--
lib/zero/zero.c | 4 +-
7 files changed, 49 insertions(+), 68 deletions(-)
diff --git a/lib/cache_segtype/cache.c b/lib/cache_segtype/cache.c
index 3b1214b..0e49530 100644
--- a/lib/cache_segtype/cache.c
+++ b/lib/cache_segtype/cache.c
@@ -216,35 +216,6 @@ static int _cache_pool_text_export(const struct lv_segment *seg,
return 1;
}
-static int _cache_pool_add_target_line(struct dev_manager *dm,
- struct dm_pool *mem,
- struct cmd_context *cmd __attribute__((unused)),
- void **target_state __attribute__((unused)),
- struct lv_segment *seg,
- const struct lv_activate_opts *laopts __attribute__((unused)),
- struct dm_tree_node *node, uint64_t len,
- uint32_t *pvmove_mirror_count __attribute__((unused)))
-{
- /*
- * This /could/ be directed at _cdata, but I prefer
- * not to give a user direct access to a sub-LV via
- * this cache_pool.
- */
- return dm_tree_node_add_error_target(node, len);
-}
-
-static int _modules_needed(struct dm_pool *mem,
- const struct lv_segment *seg __attribute__((unused)),
- struct dm_list *modules)
-{
- if (!str_list_add(mem, modules, "cache")) {
- log_error("cache module string list allocation failed");
- return 0;
- }
-
- return 1;
-}
-
static void _destroy(struct segment_type *segtype)
{
dm_free((void *) segtype);
@@ -281,6 +252,17 @@ static int _target_present(struct cmd_context *cmd,
return _cache_present;
}
+static int _modules_needed(struct dm_pool *mem,
+ const struct lv_segment *seg __attribute__((unused)),
+ struct dm_list *modules)
+{
+ if (!str_list_add(mem, modules, "cache")) {
+ log_error("String list allocation failed for cache module.");
+ return 0;
+ }
+
+ return 1;
+}
#endif /* DEVMAPPER_SUPPORT */
static struct segtype_handler _cache_pool_ops = {
@@ -288,13 +270,12 @@ static struct segtype_handler _cache_pool_ops = {
.text_import = _cache_pool_text_import,
.text_import_area_count = _cache_pool_text_import_area_count,
.text_export = _cache_pool_text_export,
- .add_target_line = _cache_pool_add_target_line,
#ifdef DEVMAPPER_SUPPORT
.target_present = _target_present,
+ .modules_needed = _modules_needed,
# ifdef DMEVENTD
# endif /* DMEVENTD */
#endif
- .modules_needed = _modules_needed,
.destroy = _destroy,
};
@@ -348,6 +329,7 @@ static int _cache_text_export(const struct lv_segment *seg, struct formatter *f)
return 1;
}
+#ifdef DEVMAPPER_SUPPORT
static int _cache_add_target_line(struct dev_manager *dm,
struct dm_pool *mem,
struct cmd_context *cmd __attribute__((unused)),
@@ -384,19 +366,20 @@ static int _cache_add_target_line(struct dev_manager *dm,
return add_areas_line(dm, seg, node, 0u, seg->area_count);
}
+#endif /* DEVMAPPER_SUPPORT */
static struct segtype_handler _cache_ops = {
.name = _name,
.text_import = _cache_text_import,
.text_import_area_count = _cache_text_import_area_count,
.text_export = _cache_text_export,
- .add_target_line = _cache_add_target_line,
#ifdef DEVMAPPER_SUPPORT
+ .add_target_line = _cache_add_target_line,
.target_present = _target_present,
+ .modules_needed = _modules_needed,
# ifdef DMEVENTD
# endif /* DMEVENTD */
#endif
- .modules_needed = _modules_needed,
.destroy = _destroy,
};
@@ -445,4 +428,3 @@ int init_cache_segtypes(struct cmd_context *cmd,
return 1;
}
-
diff --git a/lib/error/errseg.c b/lib/error/errseg.c
index 179f1a6..f3bf9c9 100644
--- a/lib/error/errseg.c
+++ b/lib/error/errseg.c
@@ -63,7 +63,6 @@ static int _errseg_target_present(struct cmd_context *cmd,
_errseg_checked = 1;
return _errseg_present;
}
-#endif
static int _errseg_modules_needed(struct dm_pool *mem,
const struct lv_segment *seg __attribute__((unused)),
@@ -76,6 +75,7 @@ static int _errseg_modules_needed(struct dm_pool *mem,
return 1;
}
+#endif
static void _errseg_destroy(struct segment_type *segtype)
{
@@ -88,8 +88,8 @@ static struct segtype_handler _error_ops = {
#ifdef DEVMAPPER_SUPPORT
.add_target_line = _errseg_add_target_line,
.target_present = _errseg_target_present,
-#endif
.modules_needed = _errseg_modules_needed,
+#endif
.destroy = _errseg_destroy,
};
diff --git a/lib/mirror/mirrored.c b/lib/mirror/mirrored.c
index afb047e..e3f768f 100644
--- a/lib/mirror/mirrored.c
+++ b/lib/mirror/mirrored.c
@@ -531,7 +531,7 @@ static int _mirrored_target_present(struct cmd_context *cmd,
return _mirrored_present;
}
-#ifdef DMEVENTD
+# ifdef DMEVENTD
static const char *_get_mirror_dso_path(struct cmd_context *cmd)
{
return get_monitor_dso_path(cmd, find_config_tree_str(cmd, dmeventd_mirror_library_CFG, NULL));
@@ -561,8 +561,7 @@ static int _target_unmonitor_events(struct lv_segment *seg, int events)
return _target_set_events(seg, events, 0);
}
-#endif /* DMEVENTD */
-#endif /* DEVMAPPER_SUPPORT */
+# endif /* DMEVENTD */
static int _mirrored_modules_needed(struct dm_pool *mem,
const struct lv_segment *seg,
@@ -585,6 +584,7 @@ static int _mirrored_modules_needed(struct dm_pool *mem,
return 1;
}
+#endif /* DEVMAPPER_SUPPORT */
static void _mirrored_destroy(struct segment_type *segtype)
{
@@ -602,13 +602,13 @@ static struct segtype_handler _mirrored_ops = {
.target_percent = _mirrored_target_percent,
.target_present = _mirrored_target_present,
.check_transient_status = _mirrored_transient_status,
+ .modules_needed = _mirrored_modules_needed,
# ifdef DMEVENTD
.target_monitored = _target_registered,
.target_monitor_events = _target_monitor_events,
.target_unmonitor_events = _target_unmonitor_events,
# endif /* DMEVENTD */
#endif
- .modules_needed = _mirrored_modules_needed,
.destroy = _mirrored_destroy,
};
diff --git a/lib/raid/raid.c b/lib/raid/raid.c
index 815c6f7..b77c315 100644
--- a/lib/raid/raid.c
+++ b/lib/raid/raid.c
@@ -262,18 +262,6 @@ static int _raid_target_status_compatible(const char *type)
return (strstr(type, "raid") != NULL);
}
-static int _raid_modules_needed(struct dm_pool *mem,
- const struct lv_segment *seg __attribute__((unused)),
- struct dm_list *modules)
-{
- if (!str_list_add(mem, modules, "raid")) {
- log_error("raid module string list allocation failed");
- return 0;
- }
-
- return 1;
-}
-
static void _raid_destroy(struct segment_type *segtype)
{
dm_free((void *) segtype);
@@ -367,7 +355,19 @@ static int _raid_target_present(struct cmd_context *cmd,
return _raid_present;
}
-#ifdef DMEVENTD
+static int _raid_modules_needed(struct dm_pool *mem,
+ const struct lv_segment *seg __attribute__((unused)),
+ struct dm_list *modules)
+{
+ if (!str_list_add(mem, modules, "raid")) {
+ log_error("raid module string list allocation failed");
+ return 0;
+ }
+
+ return 1;
+}
+
+# ifdef DMEVENTD
static const char *_get_raid_dso_path(struct cmd_context *cmd)
{
const char *config_str = find_config_tree_str(cmd, dmeventd_raid_library_CFG, NULL);
@@ -399,8 +399,9 @@ static int _raid_target_unmonitor_events(struct lv_segment *seg, int events)
{
return _raid_set_events(seg, events, 0);
}
+# endif /* DMEVENTD */
#endif /* DEVMAPPER_SUPPORT */
-#endif /* DMEVENTD */
+
static struct segtype_handler _raid_ops = {
.name = _raid_name,
.text_import_area_count = _raid_text_import_area_count,
@@ -411,13 +412,13 @@ static struct segtype_handler _raid_ops = {
#ifdef DEVMAPPER_SUPPORT
.target_percent = _raid_target_percent,
.target_present = _raid_target_present,
+ .modules_needed = _raid_modules_needed,
# ifdef DMEVENTD
.target_monitored = _raid_target_monitored,
.target_monitor_events = _raid_target_monitor_events,
.target_unmonitor_events = _raid_target_unmonitor_events,
# endif /* DMEVENTD */
#endif
- .modules_needed = _raid_modules_needed,
.destroy = _raid_destroy,
};
@@ -475,10 +476,10 @@ int init_multiple_segtypes(struct cmd_context *cmd, struct segtype_library *segl
int monitored = 0;
#ifdef DEVMAPPER_SUPPORT
-#ifdef DMEVENTD
+# ifdef DMEVENTD
if (_get_raid_dso_path(cmd))
monitored = SEG_MONITORED;
-#endif
+# endif
#endif
for (i = 0; i < DM_ARRAY_SIZE(_raid_types); ++i)
diff --git a/lib/snapshot/snapshot.c b/lib/snapshot/snapshot.c
index 7ee0365..a4ee2ea 100644
--- a/lib/snapshot/snapshot.c
+++ b/lib/snapshot/snapshot.c
@@ -100,12 +100,12 @@ static int _snap_text_export(const struct lv_segment *seg, struct formatter *f)
return 1;
}
+#ifdef DEVMAPPER_SUPPORT
static int _snap_target_status_compatible(const char *type)
{
return (strcmp(type, "snapshot-merge") == 0);
}
-#ifdef DEVMAPPER_SUPPORT
static int _snap_target_percent(void **target_state __attribute__((unused)),
percent_t *percent,
struct dm_pool *mem __attribute__((unused)),
@@ -178,7 +178,7 @@ static int _snap_target_present(struct cmd_context *cmd,
return _snap_present;
}
-#ifdef DMEVENTD
+# ifdef DMEVENTD
static const char *_get_snapshot_dso_path(struct cmd_context *cmd)
{
@@ -212,8 +212,7 @@ static int _target_unregister_events(struct lv_segment *seg,
return _target_set_events(seg, events, 0);
}
-#endif /* DMEVENTD */
-#endif
+# endif /* DMEVENTD */
static int _snap_modules_needed(struct dm_pool *mem,
const struct lv_segment *seg __attribute__((unused)),
@@ -226,6 +225,7 @@ static int _snap_modules_needed(struct dm_pool *mem,
return 1;
}
+#endif /* DEVMAPPER_SUPPORT */
static void _snap_destroy(struct segment_type *segtype)
{
@@ -237,17 +237,17 @@ static struct segtype_handler _snapshot_ops = {
.target_name = _snap_target_name,
.text_import = _snap_text_import,
.text_export = _snap_text_export,
- .target_status_compatible = _snap_target_status_compatible,
#ifdef DEVMAPPER_SUPPORT
+ .target_status_compatible = _snap_target_status_compatible,
.target_percent = _snap_target_percent,
.target_present = _snap_target_present,
+ .modules_needed = _snap_modules_needed,
# ifdef DMEVENTD
.target_monitored = _target_registered,
.target_monitor_events = _target_register_events,
.target_unmonitor_events = _target_unregister_events,
# endif /* DMEVENTD */
#endif
- .modules_needed = _snap_modules_needed,
.destroy = _snap_destroy,
};
diff --git a/lib/thin/thin.c b/lib/thin/thin.c
index a1bfaaa..28f3e43 100644
--- a/lib/thin/thin.c
+++ b/lib/thin/thin.c
@@ -729,15 +729,13 @@ static struct segtype_handler _thin_pool_ops = {
.add_target_line = _thin_pool_add_target_line,
.target_percent = _thin_pool_target_percent,
.target_present = _thin_target_present,
+ .modules_needed = _thin_pool_modules_needed,
# ifdef DMEVENTD
.target_monitored = _target_registered,
.target_monitor_events = _target_register_events,
.target_unmonitor_events = _target_unregister_events,
# endif /* DMEVENTD */
#endif
-#ifdef DEVMAPPER_SUPPORT
- .modules_needed = _thin_pool_modules_needed,
-#endif
.destroy = _thin_destroy,
};
diff --git a/lib/zero/zero.c b/lib/zero/zero.c
index 555c570..2a1fd0b 100644
--- a/lib/zero/zero.c
+++ b/lib/zero/zero.c
@@ -59,7 +59,6 @@ static int _zero_target_present(struct cmd_context *cmd,
return _zero_present;
}
-#endif
static int _zero_modules_needed(struct dm_pool *mem,
const struct lv_segment *seg __attribute__((unused)),
@@ -72,6 +71,7 @@ static int _zero_modules_needed(struct dm_pool *mem,
return 1;
}
+#endif
static void _zero_destroy(struct segment_type *segtype)
{
@@ -84,8 +84,8 @@ static struct segtype_handler _zero_ops = {
#ifdef DEVMAPPER_SUPPORT
.add_target_line = _zero_add_target_line,
.target_present = _zero_target_present,
-#endif
.modules_needed = _zero_modules_needed,
+#endif
.destroy = _zero_destroy,
};
9 years, 5 months
master - cleanup: indent
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=62e8dd4f6ec73b...
Commit: 62e8dd4f6ec73b6f94f66c3b14cdf3d80c06a2af
Parent: cbdf63fdd21216af78077ae2d02ac307a3deec0a
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Tue Apr 29 20:14:05 2014 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Apr 30 10:26:30 2014 +0200
cleanup: indent
---
lib/metadata/lv.c | 3 +--
1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/lib/metadata/lv.c b/lib/metadata/lv.c
index 54306a2..4dbcb20 100644
--- a/lib/metadata/lv.c
+++ b/lib/metadata/lv.c
@@ -154,8 +154,7 @@ char *lvseg_monitor_dup(struct dm_pool *mem, const struct lv_segment *seg)
else if (!seg_monitored(segm) || (segm->status & PVMOVE))
s = "not monitored";
else if (lv_info(seg->lv->vg->cmd, seg->lv, 1, &info, 0, 0) && info.exists) {
- monitored = segm->segtype->ops->
- target_monitored((struct lv_segment*)segm, &pending);
+ monitored = segm->segtype->ops->target_monitored(segm, &pending);
if (pending)
s = "pending";
else
9 years, 5 months
master - cleanup: indent in devmapper-event
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=cbdf63fdd21216...
Commit: cbdf63fdd21216af78077ae2d02ac307a3deec0a
Parent: b56aef1915c5cf5eddb8b415d204843fc1192812
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Tue Apr 29 13:21:15 2014 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Apr 30 10:26:30 2014 +0200
cleanup: indent in devmapper-event
Drop header inclusion - this file is already included.
Shorten code.
---
daemons/dmeventd/libdevmapper-event.c | 27 ++++++++++++---------------
1 files changed, 12 insertions(+), 15 deletions(-)
diff --git a/daemons/dmeventd/libdevmapper-event.c b/daemons/dmeventd/libdevmapper-event.c
index 57185b9..6b7338f 100644
--- a/daemons/dmeventd/libdevmapper-event.c
+++ b/daemons/dmeventd/libdevmapper-event.c
@@ -20,7 +20,6 @@
#include <errno.h>
#include <fcntl.h>
#include <stdio.h>
-#include <stdint.h>
#include <stdlib.h>
#include <string.h>
#include <sys/file.h>
@@ -57,7 +56,7 @@ static void _dm_event_handler_clear_dev_info(struct dm_event_handler *dmevh)
struct dm_event_handler *dm_event_handler_create(void)
{
- struct dm_event_handler *dmevh = NULL;
+ struct dm_event_handler *dmevh;
if (!(dmevh = dm_zalloc(sizeof(*dmevh)))) {
log_error("Failed to allocate event handler.");
@@ -82,8 +81,7 @@ int dm_event_handler_set_dmeventd_path(struct dm_event_handler *dmevh, const cha
dm_free(dmevh->dmeventd_path);
- dmevh->dmeventd_path = dm_strdup(dmeventd_path);
- if (!dmevh->dmeventd_path)
+ if (!(dmevh->dmeventd_path = dm_strdup(dmeventd_path)))
return -ENOMEM;
return 0;
@@ -93,10 +91,10 @@ int dm_event_handler_set_dso(struct dm_event_handler *dmevh, const char *path)
{
if (!path) /* noop */
return 0;
+
dm_free(dmevh->dso);
- dmevh->dso = dm_strdup(path);
- if (!dmevh->dso)
+ if (!(dmevh->dso = dm_strdup(path)))
return -ENOMEM;
return 0;
@@ -109,9 +107,9 @@ int dm_event_handler_set_dev_name(struct dm_event_handler *dmevh, const char *de
_dm_event_handler_clear_dev_info(dmevh);
- dmevh->dev_name = dm_strdup(dev_name);
- if (!dmevh->dev_name)
+ if (!(dmevh->dev_name = dm_strdup(dev_name)))
return -ENOMEM;
+
return 0;
}
@@ -122,9 +120,9 @@ int dm_event_handler_set_uuid(struct dm_event_handler *dmevh, const char *uuid)
_dm_event_handler_clear_dev_info(dmevh);
- dmevh->uuid = dm_strdup(uuid);
- if (!dmevh->uuid)
+ if (!(dmevh->uuid = dm_strdup(uuid)))
return -ENOMEM;
+
return 0;
}
@@ -691,7 +689,6 @@ static int _parse_message(struct dm_event_daemon_message *msg, char **dso_name,
(*dso_name = _fetch_string(&p, ' ')) &&
(*uuid = _fetch_string(&p, ' '))) {
*evmask = atoi(p);
-
dm_free(id);
return 0;
}
@@ -746,8 +743,8 @@ int dm_event_get_registered_device(struct dm_event_handler *dmevh, int next)
ret = -ENXIO; /* dmeventd probably gave us bogus uuid back */
goto fail;
}
- dmevh->uuid = dm_strdup(reply_uuid);
- if (!dmevh->uuid) {
+
+ if (!(dmevh->uuid = dm_strdup(reply_uuid))) {
ret = -ENOMEM;
goto fail;
}
@@ -766,8 +763,7 @@ int dm_event_get_registered_device(struct dm_event_handler *dmevh, int next)
dm_free(reply_uuid);
reply_uuid = NULL;
- dmevh->dev_name = dm_strdup(dm_task_get_name(dmt));
- if (!dmevh->dev_name) {
+ if (!(dmevh->dev_name = dm_strdup(dm_task_get_name(dmt)))) {
ret = -ENOMEM;
goto fail;
}
@@ -852,6 +848,7 @@ int dm_event_get_timeout(const char *device_path, uint32_t *timeout)
if (!device_exists(device_path))
return -ENODEV;
+
if (!(ret = _do_event(DM_EVENT_CMD_GET_TIMEOUT, &msg, NULL, device_path,
0, 0))) {
char *p = _skip_string(msg.data, ' ');
9 years, 5 months
master - unknown: add_target_line is not needed
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=b56aef1915c5cf...
Commit: b56aef1915c5cf5eddb8b415d204843fc1192812
Parent: 1756bf6c63a69dfc48fc294352978b7f07627536
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Tue Apr 29 23:38:08 2014 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Apr 30 10:26:30 2014 +0200
unknown: add_target_line is not needed
Leave addition of unknown segment to table as internal error.
Do not replace unknown segment with error device.
---
lib/unknown/unknown.c | 17 -----------------
1 files changed, 0 insertions(+), 17 deletions(-)
diff --git a/lib/unknown/unknown.c b/lib/unknown/unknown.c
index 9e433cf..2ce2f9d 100644
--- a/lib/unknown/unknown.c
+++ b/lib/unknown/unknown.c
@@ -53,20 +53,6 @@ static int _unknown_text_export(const struct lv_segment *seg, struct formatter *
return out_config_node(f, cn);
}
-#ifdef DEVMAPPER_SUPPORT
-static int _unknown_add_target_line(struct dev_manager *dm __attribute__((unused)),
- struct dm_pool *mem __attribute__((unused)),
- struct cmd_context *cmd __attribute__((unused)),
- void **target_state __attribute__((unused)),
- struct lv_segment *seg __attribute__((unused)),
- const struct lv_activate_opts *laopts __attribute__((unused)),
- struct dm_tree_node *node, uint64_t len,
- uint32_t *pvmove_mirror_count __attribute__((unused)))
-{
- return dm_tree_node_add_error_target(node, len);
-}
-#endif
-
static void _unknown_destroy(struct segment_type *segtype)
{
dm_free(segtype);
@@ -76,9 +62,6 @@ static struct segtype_handler _unknown_ops = {
.name = _unknown_name,
.text_import = _unknown_text_import,
.text_export = _unknown_text_export,
-#ifdef DEVMAPPER_SUPPORT
- .add_target_line = _unknown_add_target_line,
-#endif
.destroy = _unknown_destroy,
};
9 years, 5 months
master - makefile: fix regression
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=1756bf6c63a69d...
Commit: 1756bf6c63a69dfc48fc294352978b7f07627536
Parent: 62ad6dee18199f4bf80f5dc0dafa68b7f5396508
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Tue Apr 29 13:24:23 2014 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Apr 30 10:26:29 2014 +0200
makefile: fix regression
Commit 1af05a7a166a470d1b9d86f88fdc64c2d984124b was incorrect.
Generated files from configure could be only distclean-ed.
(in-release fix)
---
scripts/Makefile.in | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/scripts/Makefile.in b/scripts/Makefile.in
index ed77900..c2842a4 100644
--- a/scripts/Makefile.in
+++ b/scripts/Makefile.in
@@ -125,7 +125,7 @@ install_tmpfiles_configuration:
$(INSTALL_DIR) $(tmpfiles_dir)
$(INSTALL_DATA) lvm2_tmpfiles_red_hat.conf $(tmpfiles_dir)/lvm2.conf
-CLEAN_TARGETS += \
+DIST_TARGETS += \
blkdeactivate.sh \
blk_availability_init_red_hat \
blk_availability_systemd_red_hat.service \
9 years, 5 months
master - lv: show X attr when lv_info fails
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=62ad6dee18199f...
Commit: 62ad6dee18199f4bf80f5dc0dafa68b7f5396508
Parent: 816cc94ac1a8a1048a5f737e9bc3f9e251773bf7
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Tue Apr 29 20:14:36 2014 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Apr 30 10:26:29 2014 +0200
lv: show X attr when lv_info fails
Print 'X' also when lv_info() fails.
(i.e. compilation with --disable-ioctl)
---
lib/metadata/lv.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/metadata/lv.c b/lib/metadata/lv.c
index 0225704..54306a2 100644
--- a/lib/metadata/lv.c
+++ b/lib/metadata/lv.c
@@ -613,10 +613,10 @@ char *lv_attr_dup(struct dm_pool *mem, const struct logical_volume *lv)
repstr[3] = (lv->status & FIXED_MINOR) ? 'm' : '-';
- if (!activation()) {
+ if (!activation() || !lv_info(lv->vg->cmd, lv, 0, &info, 1, 0)) {
repstr[4] = 'X'; /* Unknown */
repstr[5] = 'X'; /* Unknown */
- } else if (lv_info(lv->vg->cmd, lv, 0, &info, 1, 0) && info.exists) {
+ } else if (info.exists) {
if (info.suspended)
repstr[4] = 's'; /* Suspended */
else if (info.live_table)
9 years, 5 months
master - devmapper-event: always initialize timeout
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=816cc94ac1a8a1...
Commit: 816cc94ac1a8a1048a5f737e9bc3f9e251773bf7
Parent: 675fcfe9b7f5d624f8b9e45bc61869ef0ff830b5
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Tue Apr 29 13:23:14 2014 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Wed Apr 30 10:26:29 2014 +0200
devmapper-event: always initialize timeout
Always pass fully initialized timeval struct to select.
---
daemons/dmeventd/libdevmapper-event.c | 6 ++----
1 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/daemons/dmeventd/libdevmapper-event.c b/daemons/dmeventd/libdevmapper-event.c
index 51c925f..57185b9 100644
--- a/daemons/dmeventd/libdevmapper-event.c
+++ b/daemons/dmeventd/libdevmapper-event.c
@@ -224,7 +224,6 @@ static int _daemon_read(struct dm_event_fifos *fifos,
unsigned bytes = 0;
int ret, i;
fd_set fds;
- struct timeval tval = { 0, 0 };
size_t size = 2 * sizeof(uint32_t); /* status + size */
uint32_t *header = alloca(size);
char *buf = (char *)header;
@@ -232,11 +231,10 @@ static int _daemon_read(struct dm_event_fifos *fifos,
while (bytes < size) {
for (i = 0, ret = 0; (i < 20) && (ret < 1); i++) {
/* Watch daemon read FIFO for input. */
+ struct timeval tval = { .tv_sec = 1 };
FD_ZERO(&fds);
FD_SET(fifos->server, &fds);
- tval.tv_sec = 1;
- ret = select(fifos->server + 1, &fds, NULL, NULL,
- &tval);
+ ret = select(fifos->server + 1, &fds, NULL, NULL, &tval);
if (ret < 0 && errno != EINTR) {
log_error("Unable to read from event server");
return 0;
9 years, 5 months