From: Martin Quinson Date: Wed, 18 Jul 2018 20:25:14 +0000 (+0200) Subject: Remove portability wrapper to condition variables X-Git-Tag: v3_21~391 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/d2b290a247bb97e1719d99aa84f3cc3b9dd8c5f7 Remove portability wrapper to condition variables --- diff --git a/ChangeLog b/ChangeLog index f5fada58eb..f53f1afb98 100644 --- a/ChangeLog +++ b/ChangeLog @@ -6,6 +6,7 @@ Tracing: XBT: - Remove xbt_os_thread_specific features + - Remove portability wrapper to condition variables Fixed bugs: - #264: Add ptask L07 resource tracing diff --git a/include/xbt/xbt_os_thread.h b/include/xbt/xbt_os_thread.h index 6774a63edf..5c4f2ae5a1 100644 --- a/include/xbt/xbt_os_thread.h +++ b/include/xbt/xbt_os_thread.h @@ -51,14 +51,6 @@ XBT_PUBLIC void xbt_os_mutex_acquire(xbt_os_mutex_t mutex); XBT_PUBLIC void xbt_os_mutex_release(xbt_os_mutex_t mutex); XBT_PUBLIC void xbt_os_mutex_destroy(xbt_os_mutex_t mutex); -/** @brief Thread condition data type (opaque structure) */ -typedef struct xbt_os_cond_ *xbt_os_cond_t; -XBT_PUBLIC xbt_os_cond_t xbt_os_cond_init(void); -XBT_PUBLIC void xbt_os_cond_wait(xbt_os_cond_t cond, xbt_os_mutex_t mutex); -XBT_PUBLIC void xbt_os_cond_signal(xbt_os_cond_t cond); -XBT_PUBLIC void xbt_os_cond_broadcast(xbt_os_cond_t cond); -XBT_PUBLIC void xbt_os_cond_destroy(xbt_os_cond_t cond); - /** @brief Semaphore data type (opaque structure) */ typedef struct xbt_os_sem_ *xbt_os_sem_t; XBT_PUBLIC xbt_os_sem_t xbt_os_sem_init(unsigned int value); diff --git a/src/xbt/xbt_os_thread.c b/src/xbt/xbt_os_thread.c index 3d566e6010..fc6b5746f8 100644 --- a/src/xbt/xbt_os_thread.c +++ b/src/xbt/xbt_os_thread.c @@ -295,47 +295,6 @@ void xbt_os_mutex_destroy(xbt_os_mutex_t mutex) free(mutex); } -/***** condition related functions *****/ -typedef struct xbt_os_cond_ { - pthread_cond_t c; -} s_xbt_os_cond_t; - -xbt_os_cond_t xbt_os_cond_init(void) -{ - xbt_os_cond_t res = xbt_new(s_xbt_os_cond_t, 1); - int errcode = pthread_cond_init(&(res->c), NULL); - xbt_assert(errcode==0, "pthread_cond_init() failed: %s", strerror(errcode)); - return res; -} - -void xbt_os_cond_wait(xbt_os_cond_t cond, xbt_os_mutex_t mutex) -{ - int errcode = pthread_cond_wait(&(cond->c), &(mutex->m)); - xbt_assert(errcode==0, "pthread_cond_wait(%p,%p) failed: %s", cond, mutex, strerror(errcode)); -} - -void xbt_os_cond_signal(xbt_os_cond_t cond) -{ - int errcode = pthread_cond_signal(&(cond->c)); - xbt_assert(errcode==0, "pthread_cond_signal(%p) failed: %s", cond, strerror(errcode)); -} - -void xbt_os_cond_broadcast(xbt_os_cond_t cond) -{ - int errcode = pthread_cond_broadcast(&(cond->c)); - xbt_assert(errcode==0, "pthread_cond_broadcast(%p) failed: %s", cond, strerror(errcode)); -} - -void xbt_os_cond_destroy(xbt_os_cond_t cond) -{ - if (!cond) - return; - - int errcode = pthread_cond_destroy(&(cond->c)); - xbt_assert(errcode==0, "pthread_cond_destroy(%p) failed: %s", cond, strerror(errcode)); - free(cond); -} - typedef struct xbt_os_sem_ { #if !HAVE_SEM_INIT char *name;