[lvm-devel] master - dmeventd: debug error paths
Zdenek Kabelac
zkabelac at fedoraproject.org
Fri Oct 23 08:55:04 UTC 2015
Gitweb: http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=cff1c728d8c80b3393c461f6229066f633b67fc2
Commit: cff1c728d8c80b3393c461f6229066f633b67fc2
Parent: 2786cd27da3e7c6176940495ba57653ead7cfe08
Author: Zdenek Kabelac <zkabelac at redhat.com>
AuthorDate: Fri Oct 23 09:43:06 2015 +0200
Committer: Zdenek Kabelac <zkabelac at redhat.com>
CommitterDate: Fri Oct 23 10:54:13 2015 +0200
dmeventd: debug error paths
---
daemons/dmeventd/dmeventd.c | 13 +++++++++----
1 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/daemons/dmeventd/dmeventd.c b/daemons/dmeventd/dmeventd.c
index 6f3bfff..af03091 100644
--- a/daemons/dmeventd/dmeventd.c
+++ b/daemons/dmeventd/dmeventd.c
@@ -446,8 +446,10 @@ static int _pthread_create_smallstack(pthread_t *t, void *(*fun)(void *), void *
* Linux these functions always succeed (but portable and future-proof
* applications should nevertheless handle a possible error return).
*/
- if ((r = pthread_attr_init(&attr)) != 0)
+ if ((r = pthread_attr_init(&attr)) != 0) {
+ log_sys_error("pthread_attr_init", "");
return r;
+ }
/*
* We use a smaller stack since it gets preallocated in its entirety
@@ -462,7 +464,8 @@ static int _pthread_create_smallstack(pthread_t *t, void *(*fun)(void *), void *
t = &tmp;
}
- r = pthread_create(t, &attr, fun, arg);
+ if ((r = pthread_create(t, &attr, fun, arg)))
+ log_sys_error("pthread_create", "");
pthread_attr_destroy(&attr);
@@ -1150,7 +1153,7 @@ static int _register_for_event(struct message_data *message_data)
}
if ((ret = _create_thread(thread))) {
- log_sys_error("pthread_create", "");
+ stack;
_free_thread_status(thread);
return -ret;
}
@@ -1169,8 +1172,10 @@ static int _register_for_event(struct message_data *message_data)
usually means we are so starved on resources that we are
almost as good as dead already... */
if ((message_data->events_field & DM_EVENT_TIMEOUT) &&
- (ret = _register_for_timeout(thread)))
+ (ret = _register_for_timeout(thread))) {
+ stack;
_unregister_for_event(message_data);
+ }
return -ret;
}
More information about the lvm-devel
mailing list