[lvm-devel] master - dmeventd: debug signals
Zdenek Kabelac
zkabelac at fedoraproject.org
Thu Oct 22 21:34:06 UTC 2015
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=4284ba65ebe6401b2dbedc9abe850b650ed68f93
Commit: 4284ba65ebe6401b2dbedc9abe850b650ed68f93
Parent: aeec62ad1987a5ec59b782f3377d6ae1693e1eab
Author: Zdenek Kabelac <zkabelac at redhat.com>
AuthorDate: Thu Oct 22 11:15:53 2015 +0200
Committer: Zdenek Kabelac <zkabelac at redhat.com>
CommitterDate: Thu Oct 22 22:41:12 2015 +0200
dmeventd: debug signals
---
daemons/dmeventd/dmeventd.c | 20 ++++++++++++++++++++
1 files changed, 20 insertions(+), 0 deletions(-)
diff --git a/daemons/dmeventd/dmeventd.c b/daemons/dmeventd/dmeventd.c
index 2706ad6..a7c1c6e 100644
--- a/daemons/dmeventd/dmeventd.c
+++ b/daemons/dmeventd/dmeventd.c
@@ -789,6 +789,23 @@ static void _unregister_for_timeout(struct thread_status *thread)
pthread_mutex_unlock(&_timeout_mutex);
}
+#ifdef DEBUG_SIGNALS
+/* Print list of signals within a signal set */
+static void _print_sigset(const char *prefix, const sigset_t *sigset)
+{
+ int sig, cnt = 0;
+
+ for (sig = 1; sig < NSIG; sig++)
+ if (!sigismember(sigset, sig)) {
+ cnt++;
+ log_debug("%s%d (%s)", prefix, sig, strsignal(sig));
+ }
+
+ if (!cnt)
+ log_debug("%s<empty signal set>", prefix);
+}
+#endif
+
static sigset_t _unblock_sigalrm(void)
{
sigset_t set, old;
@@ -844,6 +861,9 @@ static int _event_wait(struct thread_status *thread)
pthread_sigmask(SIG_SETMASK, &set, NULL);
+#ifdef DEBUG_SIGNALS
+ _print_sigset("dmeventd blocking ", &set);
+#endif
DEBUGLOG("Completed waitevent task for %s.", thread->device.name);
return ret;
More information about the lvm-devel
mailing list