You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
1.3 KiB
40 lines
1.3 KiB
7 years ago
|
From 94a631461d2d17e1847d2e215bce297bb1a2b70d Mon Sep 17 00:00:00 2001
|
||
|
From: Zdenek Kabelac <zkabelac@redhat.com>
|
||
|
Date: Fri, 5 Jan 2018 21:08:24 +0100
|
||
|
Subject: [PATCH 17/25] dmeventd: add check for result code
|
||
|
|
||
|
Check result from pthread_kill.
|
||
|
|
||
|
(cherry picked from commit f41935909fec9eb8d64bc04530be2f38866f0b8e)
|
||
|
---
|
||
|
daemons/dmeventd/dmeventd.c | 6 +++++-
|
||
|
1 file changed, 5 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/daemons/dmeventd/dmeventd.c b/daemons/dmeventd/dmeventd.c
|
||
|
index 7ad7f81..8917422 100644
|
||
|
--- a/daemons/dmeventd/dmeventd.c
|
||
|
+++ b/daemons/dmeventd/dmeventd.c
|
||
|
@@ -754,6 +754,7 @@ static void *_timeout_thread(void *unused __attribute__((unused)))
|
||
|
struct thread_status *thread;
|
||
|
struct timespec timeout;
|
||
|
time_t curr_time;
|
||
|
+ int ret;
|
||
|
|
||
|
DEBUGLOG("Timeout thread starting.");
|
||
|
pthread_cleanup_push(_exit_timeout, NULL);
|
||
|
@@ -775,7 +776,10 @@ static void *_timeout_thread(void *unused __attribute__((unused)))
|
||
|
} else {
|
||
|
DEBUGLOG("Sending SIGALRM to Thr %x for timeout.",
|
||
|
(int) thread->thread);
|
||
|
- pthread_kill(thread->thread, SIGALRM);
|
||
|
+ ret = pthread_kill(thread->thread, SIGALRM);
|
||
|
+ if (ret && (ret != ESRCH))
|
||
|
+ log_error("Unable to wakeup Thr %x for timeout: %s.",
|
||
|
+ (int) thread->thread, strerror(ret));
|
||
|
}
|
||
|
_unlock_mutex();
|
||
|
}
|
||
|
--
|
||
|
1.8.3.1
|
||
|
|