1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-22 17:35:59 +03:00

Log fail of pthread_join

Syslog error outside of mutex section.
This commit is contained in:
Zdenek Kabelac 2012-03-01 09:50:04 +00:00
parent 53bdfe124b
commit f5de369e04
2 changed files with 6 additions and 1 deletions

View File

@ -1,5 +1,6 @@
Version 1.02.73 -
====================================
Log failure of pthread_join when cleaning unused threads in dmeventd.
Fix empty string warning logic in _find_config_str. (1.02.68)
Fix dm_task_set_name to properly resolve path to dm name (1.02.71).
Add dm_strncpy() function as a faster strncpy() replacement.

View File

@ -1517,6 +1517,7 @@ static void _cleanup_unused_threads(void)
int ret;
struct dm_list *l;
struct thread_status *thread;
int join_ret = 0;
_lock_mutex();
while ((l = dm_list_first(&_thread_registry_unused))) {
@ -1556,12 +1557,15 @@ static void _cleanup_unused_threads(void)
if (thread->status == DM_THREAD_DONE) {
dm_list_del(l);
pthread_join(thread->thread, NULL);
join_ret = pthread_join(thread->thread, NULL);
_free_thread_status(thread);
}
}
_unlock_mutex();
if (join_ret)
syslog(LOG_ERR, "Failed pthread_join: %s\n", strerror(join_ret));
}
static void _sig_alarm(int signum __attribute__((unused)))