master - Add the 's' activation mode
by David Teigland
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=d5adec105626c3...
Commit: d5adec105626c39ffd6295c832dfda9189a1d85d
Parent: 1f318dbcee07a309a2b2e8f391897a744e68c477
Author: David Teigland <teigland(a)redhat.com>
AuthorDate: Tue Jun 16 10:18:16 2015 -0500
Committer: David Teigland <teigland(a)redhat.com>
CommitterDate: Tue Jun 16 10:18:16 2015 -0500
Add the 's' activation mode
Just as 'e' means activation with an exclusive lock,
add an 's' to mean activation with a shared lock.
This allows the existing but implicit behavior of '-ay'
of clvm LVs to be specified explicitly. For local VGs,
asy simply means ay, just like aey means ay.
For local VGs, ay == aey == asy
For clvm VGs, ay == asy, aey == aey, asy == asy
---
lib/metadata/lv.c | 4 +++-
lib/metadata/metadata-exported.h | 3 ++-
tools/lvmcmdline.c | 6 ++++++
3 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/lib/metadata/lv.c b/lib/metadata/lv.c
index 10ce906..9a99c8d 100644
--- a/lib/metadata/lv.c
+++ b/lib/metadata/lv.c
@@ -953,7 +953,9 @@ exclusive:
if (!activate_lv_excl(cmd, lv))
return_0;
break;
- default: /* CHANGE_AY */
+ case CHANGE_ASY:
+ case CHANGE_AY:
+ default:
if (needs_exclusive || _lv_is_exclusive(lv))
goto exclusive;
log_verbose("Activating logical volume \"%s\".", lv->name);
diff --git a/lib/metadata/metadata-exported.h b/lib/metadata/metadata-exported.h
index 0e52153..b673af3 100644
--- a/lib/metadata/metadata-exported.h
+++ b/lib/metadata/metadata-exported.h
@@ -828,7 +828,8 @@ typedef enum activation_change {
CHANGE_AEY = 2, /* activate exclusively */
CHANGE_ALY = 3, /* activate locally */
CHANGE_ALN = 4, /* deactivate locally */
- CHANGE_AAY = 5 /* automatic activation */
+ CHANGE_AAY = 5, /* automatic activation */
+ CHANGE_ASY = 6 /* activate shared */
} activation_change_t;
/* Returns true, when change activates device */
diff --git a/tools/lvmcmdline.c b/tools/lvmcmdline.c
index 29fffb3..792dc41 100644
--- a/tools/lvmcmdline.c
+++ b/tools/lvmcmdline.c
@@ -286,6 +286,12 @@ int activation_arg(struct cmd_context *cmd __attribute__((unused)), struct arg_v
av->ui_value = CHANGE_AEY;
}
+ else if (!strcmp(av->value, "s") || !strcmp(av->value, "sy") ||
+ !strcmp(av->value, "ys")) {
+ av->i_value = CHANGE_ASY;
+ av->ui_value = CHANGE_ASY;
+ }
+
else if (!strcmp(av->value, "y")) {
av->i_value = CHANGE_AY;
av->ui_value = CHANGE_AY;
8 years, 9 months
master - Ignore hyphens in long option names
by David Teigland
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=1f318dbcee07a3...
Commit: 1f318dbcee07a309a2b2e8f391897a744e68c477
Parent: 7fe5e4010ce210b54cfcd7b81d088227fde9b23a
Author: David Teigland <teigland(a)redhat.com>
AuthorDate: Tue Jun 16 09:35:52 2015 -0500
Committer: David Teigland <teigland(a)redhat.com>
CommitterDate: Tue Jun 16 09:35:52 2015 -0500
Ignore hyphens in long option names
The hyphens are removed from long option names before
being read. This means that:
- Option name specifications in args.h must not include hyphens.
(The hyphen in 'use-policies' is removed.)
- A user can include hyphens anywhere in the option name.
All the following are equivalent:
--vgmetadatacopies,
--vg-metadata-copies,
--v-g-m-e-t-a-d-a-t-a-c-o-p-i-e-s-
---
tools/args.h | 2 +-
tools/lvm.c | 25 +++++++++++++++++++++++++
2 files changed, 26 insertions(+), 1 deletions(-)
diff --git a/tools/args.h b/tools/args.h
index 7b715f5..b5c4243 100644
--- a/tools/args.h
+++ b/tools/args.h
@@ -117,7 +117,7 @@ arg(cachesettings_ARG, '\0', "cachesettings", string_arg, ARG_GROUPABLE)
arg(unconfigured_ARG, '\0', "unconfigured", NULL, 0)
arg(units_ARG, '\0', "units", string_arg, 0)
arg(unquoted_ARG, '\0', "unquoted", NULL, 0)
-arg(use_policies_ARG, '\0', "use-policies", NULL, 0)
+arg(use_policies_ARG, '\0', "usepolicies", NULL, 0)
arg(validate_ARG, '\0', "validate", NULL, 0)
arg(version_ARG, '\0', "version", NULL, 0)
arg(vgmetadatacopies_ARG, '\0', "vgmetadatacopies", metadatacopies_arg, 0)
diff --git a/tools/lvm.c b/tools/lvm.c
index f9ab438..00cd16f 100644
--- a/tools/lvm.c
+++ b/tools/lvm.c
@@ -16,8 +16,33 @@
#include "tools.h"
#include "lvm2cmdline.h"
+#define MAX_ARG_LEN 64
+
int main(int argc, char **argv)
{
+ char arg_new[MAX_ARG_LEN];
+ char *arg;
+ int i, j, j_new;
+
+ for (i = 1; i < argc; i++) {
+ arg = argv[i];
+
+ if (arg[0] == '-' && arg[1] == '-' && strlen(arg) < MAX_ARG_LEN) {
+ memset(arg_new, 0, sizeof(arg_new));
+ arg_new[0] = '-';
+ arg_new[1] = '-';
+
+ for (j = 2, j_new = 2; j < strlen(arg) + 1; j++) {
+ if (arg[j] == '-')
+ continue;
+ arg_new[j_new] = arg[j];
+ j_new++;
+ }
+
+ memcpy(argv[i], arg_new, strlen(arg_new) + 1);
+ }
+ }
+
return lvm2_main(argc, argv);
}
8 years, 9 months
master - xlate: add new variants
by David Teigland
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=7fe5e4010ce210...
Commit: 7fe5e4010ce210b54cfcd7b81d088227fde9b23a
Parent: ce18fb61c0a3b94b642edb056a717a198473449c
Author: David Teigland <teigland(a)redhat.com>
AuthorDate: Tue Jun 16 09:30:14 2015 -0500
Committer: David Teigland <teigland(a)redhat.com>
CommitterDate: Tue Jun 16 09:30:14 2015 -0500
xlate: add new variants
New variants use the clearer function names from the kernel.
---
lib/mm/xlate.h | 82 +++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 63 insertions(+), 19 deletions(-)
diff --git a/lib/mm/xlate.h b/lib/mm/xlate.h
index 0d243c4..efb9ee3 100644
--- a/lib/mm/xlate.h
+++ b/lib/mm/xlate.h
@@ -38,27 +38,71 @@
#endif
#if BYTE_ORDER == LITTLE_ENDIAN
-# define xlate16(x) (x)
-# define xlate32(x) (x)
-# define xlate64(x) (x)
-# define xlate16_be(x) bswap_16(x)
-# define xlate32_be(x) bswap_32(x)
-# define xlate64_be(x) bswap_64(x)
+/* New clearer variants. */
+#define le16_to_cpu(x) (x)
+#define le32_to_cpu(x) (x)
+#define le64_to_cpu(x) (x)
+#define cpu_to_le16(x) (x)
+#define cpu_to_le32(x) (x)
+#define cpu_to_le64(x) (x)
+#define be16_to_cpu(x) bswap_16(x)
+#define be32_to_cpu(x) bswap_32(x)
+#define be64_to_cpu(x) bswap_64(x)
+#define cpu_to_be16(x) bswap_16(x)
+#define cpu_to_be32(x) bswap_32(x)
+#define cpu_to_be64(x) bswap_64(x)
+/* Old alternative variants. */
+#define xlate16(x) (x)
+#define xlate32(x) (x)
+#define xlate64(x) (x)
+#define xlate16_be(x) bswap_16(x)
+#define xlate32_be(x) bswap_32(x)
+#define xlate64_be(x) bswap_64(x)
+
#elif BYTE_ORDER == BIG_ENDIAN
-# define xlate16(x) bswap_16(x)
-# define xlate32(x) bswap_32(x)
-# define xlate64(x) bswap_64(x)
-# define xlate16_be(x) (x)
-# define xlate32_be(x) (x)
-# define xlate64_be(x) (x)
+/* New clearer variants. */
+#define le16_to_cpu(x) bswap_16(x)
+#define le32_to_cpu(x) bswap_32(x)
+#define le64_to_cpu(x) bswap_64(x)
+#define cpu_to_le16(x) bswap_16(x)
+#define cpu_to_le32(x) bswap_32(x)
+#define cpu_to_le64(x) bswap_64(x)
+#define be16_to_cpu(x) (x)
+#define be32_to_cpu(x) (x)
+#define be64_to_cpu(x) (x)
+#define cpu_to_be16(x) (x)
+#define cpu_to_be32(x) (x)
+#define cpu_to_be64(x) (x)
+/* Old alternative variants. */
+#define xlate16(x) bswap_16(x)
+#define xlate32(x) bswap_32(x)
+#define xlate64(x) bswap_64(x)
+#define xlate16_be(x) (x)
+#define xlate32_be(x) (x)
+#define xlate64_be(x) (x)
+
#else
-# include <asm/byteorder.h>
-# define xlate16(x) __cpu_to_le16((x))
-# define xlate32(x) __cpu_to_le32((x))
-# define xlate64(x) __cpu_to_le64((x))
-# define xlate16_be(x) __cpu_to_be16((x))
-# define xlate32_be(x) __cpu_to_be32((x))
-# define xlate64_be(x) __cpu_to_be64((x))
+#include <asm/byteorder.h>
+/* New clearer variants. */
+#define le16_to_cpu(x) __le16_to_cpu(x)
+#define le32_to_cpu(x) __le32_to_cpu(x)
+#define le64_to_cpu(x) __le64_to_cpu(x)
+#define cpu_to_le16(x) __cpu_to_le16(x)
+#define cpu_to_le32(x) __cpu_to_le32(x)
+#define cpu_to_le64(x) __cpu_to_le64(x)
+#define be16_to_cpu(x) __be16_to_cpu(x)
+#define be32_to_cpu(x) __be32_to_cpu(x)
+#define be64_to_cpu(x) __be64_to_cpu(x)
+#define cpu_to_be16(x) __cpu_to_be16(x)
+#define cpu_to_be32(x) __cpu_to_be32(x)
+#define cpu_to_be64(x) __cpu_to_be64(x)
+/* Old alternative variants. */
+#define xlate16(x) __cpu_to_le16(x)
+#define xlate32(x) __cpu_to_le32(x)
+#define xlate64(x) __cpu_to_le64(x)
+#define xlate16_be(x) __cpu_to_be16(x)
+#define xlate32_be(x) __cpu_to_be32(x)
+#define xlate64_be(x) __cpu_to_be64(x)
#endif
#endif
8 years, 9 months
master - lvmcache: mention lvconvert --cachemode
by David Teigland
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=ce18fb61c0a3b9...
Commit: ce18fb61c0a3b94b642edb056a717a198473449c
Parent: e7eb5b069689cc0fe76a95cda2fb850a6a1d2c21
Author: David Teigland <teigland(a)redhat.com>
AuthorDate: Mon Jun 15 14:30:58 2015 -0500
Committer: David Teigland <teigland(a)redhat.com>
CommitterDate: Mon Jun 15 14:30:58 2015 -0500
lvmcache: mention lvconvert --cachemode
for changing the cache mode on an existing LV.
---
man/lvmcache.7.in | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/man/lvmcache.7.in b/man/lvmcache.7.in
index 493d6a9..433746b 100644
--- a/man/lvmcache.7.in
+++ b/man/lvmcache.7.in
@@ -254,6 +254,11 @@ defines the default cache mode.
# lvconvert \-\-type cache \-\-cachepool vg/cache1 vg/lv1
.fi
+The cache mode can be changed on an existing LV with the command:
+
+.B lvconvert --cachemode writethrough|writeback VG/CacheLV
+
+
.SS Cache policy & policy settings
\&
8 years, 9 months
master - debug: better tracing messages
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=e7eb5b069689cc...
Commit: e7eb5b069689cc0fe76a95cda2fb850a6a1d2c21
Parent: 9a06ae7b35f4355e7be14b5fae2865b85fc60fc2
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Mon Jun 15 14:33:29 2015 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Jun 15 14:48:06 2015 +0200
debug: better tracing messages
Enhance traced output.
---
lib/activate/activate.c | 5 ++++-
lib/activate/dev_manager.c | 5 ++++-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/lib/activate/activate.c b/lib/activate/activate.c
index 55956fd..8c89f98 100644
--- a/lib/activate/activate.c
+++ b/lib/activate/activate.c
@@ -2010,7 +2010,9 @@ static int _lv_resume(struct cmd_context *cmd, const char *lvid_s,
log_debug_activation("Resuming LV %s/%s%s%s%s.", lv->vg->name, lv->name,
error_if_not_active ? "" : " if active",
- laopts->origin_only ? " without snapshots" : "",
+ laopts->origin_only ?
+ (lv_is_thin_pool(lv) ? " pool only" :
+ lv_is_thin_volume(lv) ? " thin only" : " without snapshots") : "",
laopts->revert ? " (reverting)" : "");
if (!lv_info(cmd, lv, laopts->origin_only, &info, 0, 0))
@@ -2272,6 +2274,7 @@ static int _lv_activate(struct cmd_context *cmd, const char *lvid_s,
if (info.exists && !info.suspended && info.live_table &&
(info.read_only == read_only_lv(lv, laopts))) {
r = 1;
+ log_debug_activation("Volume is already active.");
goto out;
}
diff --git a/lib/activate/dev_manager.c b/lib/activate/dev_manager.c
index 1171f4c..9624feb 100644
--- a/lib/activate/dev_manager.c
+++ b/lib/activate/dev_manager.c
@@ -3042,7 +3042,10 @@ static int _tree_action(struct dev_manager *dm, const struct logical_volume *lv,
int r = 0;
if (action < DM_ARRAY_SIZE(_action_names))
- log_debug_activation("Creating %s tree for %s.", _action_names[action], lv->name);
+ log_debug_activation("Creating %s%s tree for %s.",
+ _action_names[action],
+ (laopts->origin_only) ? " origin-only" : "",
+ display_lvname(lv));
/* Some LV can be used for top level tree */
/* TODO: add more.... */
8 years, 9 months
master - libdm: better debug message
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=9a06ae7b35f435...
Commit: 9a06ae7b35f4355e7be14b5fae2865b85fc60fc2
Parent: ac6b3559780ccabc8cd46353e10520677b3c1277
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Thu Jun 4 08:45:22 2015 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Jun 15 14:48:04 2015 +0200
libdm: better debug message
Print reason for failing ioctl if thin pool message fails.
---
WHATS_NEW_DM | 1 +
libdm/libdm-deptree.c | 8 +++++---
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/WHATS_NEW_DM b/WHATS_NEW_DM
index 724b1c7..dda2777 100644
--- a/WHATS_NEW_DM
+++ b/WHATS_NEW_DM
@@ -1,5 +1,6 @@
Version 1.02.99 -
================================
+ Enhance error message when thin-pool message fails.
Version 1.02.98 - 12th June 2015
================================
diff --git a/libdm/libdm-deptree.c b/libdm/libdm-deptree.c
index 578f645..1602c62 100644
--- a/libdm/libdm-deptree.c
+++ b/libdm/libdm-deptree.c
@@ -1506,11 +1506,13 @@ static int _thin_pool_node_message(struct dm_tree_node *dnode, struct thin_messa
if (!dm_task_set_message(dmt, buf))
goto_out;
- /* Internal functionality of dm_task */
+ /* Internal functionality of dm_task */
dmt->expected_errno = tm->expected_errno;
- if (!dm_task_run(dmt))
- goto_out;
+ if (!dm_task_run(dmt)) {
+ log_error("Failed to process thin pool message \"%s\".", buf);
+ goto out;
+ }
r = 1;
out:
8 years, 9 months
master - cleanup: drop double const
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=ac6b3559780cca...
Commit: ac6b3559780ccabc8cd46353e10520677b3c1277
Parent: edbdbddfb67990048512b6dbd6772fd69ad34f86
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Wed May 27 15:46:41 2015 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Jun 15 14:46:44 2015 +0200
cleanup: drop double const
Second const is unneeded.
Also always create whole array with MAX elements.
---
daemons/lvmpolld/lvmpolld-core.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/daemons/lvmpolld/lvmpolld-core.c b/daemons/lvmpolld/lvmpolld-core.c
index c5b22d7..9d46c7e 100644
--- a/daemons/lvmpolld/lvmpolld-core.c
+++ b/daemons/lvmpolld/lvmpolld-core.c
@@ -852,7 +852,7 @@ enum action_index {
ACTION_MAX /* keep at the end */
};
-static const action_fn_t const actions[] = { [ACTION_DUMP] = action_dump };
+static const action_fn_t actions[ACTION_MAX] = { [ACTION_DUMP] = action_dump };
static int _make_action(enum action_index idx, void *args)
{
8 years, 9 months
master - dmeventd: better debug
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=edbdbddfb67990...
Commit: edbdbddfb67990048512b6dbd6772fd69ad34f86
Parent: 3d5f7f90c882e0f7bfa8cafb87ce3db4ea91e4a0
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Mon Jun 15 14:35:33 2015 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Jun 15 14:46:44 2015 +0200
dmeventd: better debug
Avoid using 'static' variable within threaded environmnent for debuging.
---
daemons/dmeventd/dmeventd.c | 60 ++++++++++--------------------------------
1 files changed, 15 insertions(+), 45 deletions(-)
diff --git a/daemons/dmeventd/dmeventd.c b/daemons/dmeventd/dmeventd.c
index 9fb3af7..fcfa423 100644
--- a/daemons/dmeventd/dmeventd.c
+++ b/daemons/dmeventd/dmeventd.c
@@ -133,51 +133,20 @@ void debuglog(const char *fmt, ...)
static const char *decode_cmd(uint32_t cmd)
{
- static char buf[128];
- const char *command;
-
switch (cmd) {
- case DM_EVENT_CMD_ACTIVE:
- command = "ACTIVE";
- break;
- case DM_EVENT_CMD_REGISTER_FOR_EVENT:
- command = "REGISTER_FOR_EVENT";
- break;
- case DM_EVENT_CMD_UNREGISTER_FOR_EVENT:
- command = "UNREGISTER_FOR_EVENT";
- break;
- case DM_EVENT_CMD_GET_REGISTERED_DEVICE:
- command = "GET_REGISTERED_DEVICE";
- break;
- case DM_EVENT_CMD_GET_NEXT_REGISTERED_DEVICE:
- command = "GET_NEXT_REGISTERED_DEVICE";
- break;
- case DM_EVENT_CMD_SET_TIMEOUT:
- command = "SET_TIMEOUT";
- break;
- case DM_EVENT_CMD_GET_TIMEOUT:
- command = "GET_TIMEOUT";
- break;
- case DM_EVENT_CMD_HELLO:
- command = "HELLO";
- break;
- case DM_EVENT_CMD_DIE:
- command = "DIE";
- break;
- case DM_EVENT_CMD_GET_STATUS:
- command = "GET_STATUS";
- break;
- case DM_EVENT_CMD_GET_PARAMETERS:
- command = "GET_PARAMETERS";
- break;
- default:
- command = "unknown";
- break;
+ case DM_EVENT_CMD_ACTIVE: return "ACTIVE";
+ case DM_EVENT_CMD_REGISTER_FOR_EVENT: return "REGISTER_FOR_EVENT";
+ case DM_EVENT_CMD_UNREGISTER_FOR_EVENT: return "UNREGISTER_FOR_EVENT";
+ case DM_EVENT_CMD_GET_REGISTERED_DEVICE: return "GET_REGISTERED_DEVICE";
+ case DM_EVENT_CMD_GET_NEXT_REGISTERED_DEVICE: return "GET_NEXT_REGISTERED_DEVICE";
+ case DM_EVENT_CMD_SET_TIMEOUT: return "SET_TIMEOUT";
+ case DM_EVENT_CMD_GET_TIMEOUT: return "GET_TIMEOUT";
+ case DM_EVENT_CMD_HELLO: return "HELLO";
+ case DM_EVENT_CMD_DIE: return "DIE";
+ case DM_EVENT_CMD_GET_STATUS: return "GET_STATUS";
+ case DM_EVENT_CMD_GET_PARAMETERS: return "GET_PARAMETERS";
+ default: return "unknown";
}
-
- snprintf(buf, sizeof(buf), "%s (0x%x)", command, cmd);
-
- return buf;
}
#else
@@ -1609,7 +1578,8 @@ static void _process_request(struct dm_event_fifos *fifos)
if (!_client_read(fifos, &msg))
return;
- DEBUGLOG("%s processing...", cmd = decode_cmd(msg.cmd));
+ DEBUGLOG("%s (0x%x) processing...", decode_cmd(msg.cmd), msg.cmd);
+
die = (msg.cmd == DM_EVENT_CMD_DIE) ? 1 : 0;
/* _do_process_request fills in msg (if memory allows for
@@ -1621,7 +1591,7 @@ static void _process_request(struct dm_event_fifos *fifos)
dm_free(msg.data);
- DEBUGLOG("%s completed.", cmd);
+ DEBUGLOG("%s (0x%x) completed.", decode_cmd(msg.cmd), msg.cmd);
if (die) {
if (unlink(DMEVENTD_PIDFILE))
8 years, 9 months
master - dmeventd: drop stack
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=3d5f7f90c882e0...
Commit: 3d5f7f90c882e0f7bfa8cafb87ce3db4ea91e4a0
Parent: 9da07f1d3ef40c982d463a97cf6aaf65f813ebc8
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Mon Jun 15 14:38:44 2015 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Jun 15 14:46:44 2015 +0200
dmeventd: drop stack
---
daemons/dmeventd/dmeventd.c | 6 ++----
1 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/daemons/dmeventd/dmeventd.c b/daemons/dmeventd/dmeventd.c
index d452f84..9fb3af7 100644
--- a/daemons/dmeventd/dmeventd.c
+++ b/daemons/dmeventd/dmeventd.c
@@ -1671,10 +1671,8 @@ static void _cleanup_unused_threads(void)
if (ret == ESRCH) {
thread->status = DM_THREAD_DONE;
} else if (ret) {
- syslog(LOG_ERR,
- "Unable to terminate thread: %s\n",
- strerror(-ret));
- stack;
+ syslog(LOG_ERR, "Unable to terminate thread: %s",
+ strerror(ret));
}
break;
}
8 years, 9 months
master - dmeventd: drop pthread_cancel
by Zdenek Kabelac
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=9da07f1d3ef40c...
Commit: 9da07f1d3ef40c982d463a97cf6aaf65f813ebc8
Parent: f715fefe314288a3200d60afd71991e86f3a098f
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Mon Jun 15 14:39:17 2015 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Mon Jun 15 14:46:44 2015 +0200
dmeventd: drop pthread_cancel
Drop unused pthread canceling as well as DEBUG printing in signal
handler.
---
daemons/dmeventd/dmeventd.c | 3 +--
1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/daemons/dmeventd/dmeventd.c b/daemons/dmeventd/dmeventd.c
index ad27060..d452f84 100644
--- a/daemons/dmeventd/dmeventd.c
+++ b/daemons/dmeventd/dmeventd.c
@@ -1706,8 +1706,7 @@ static void _cleanup_unused_threads(void)
static void _sig_alarm(int signum __attribute__((unused)))
{
- DEBUGLOG("Received SIGALRM.");
- pthread_testcancel();
+ /* empty SIG_IGN */;
}
/* Init thread signal handling. */
8 years, 9 months