Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use new style logging macros.
[simgrid.git] / src / xbt / xbt_os_thread.c
index c3f5688..e298123 100644 (file)
@@ -305,7 +305,7 @@ void xbt_os_mutex_timedacquire(xbt_os_mutex_t mutex, double delay)
 
     ts_end.tv_sec = (time_t) floor(end);
     ts_end.tv_nsec = (long) ((end - ts_end.tv_sec) * 1000000000);
-    DEBUG2("pthread_mutex_timedlock(%p,%p)", &(mutex->m), &ts_end);
+    XBT_DEBUG("pthread_mutex_timedlock(%p,%p)", &(mutex->m), &ts_end);
 
     errcode = pthread_mutex_timedlock(&(mutex->m), &ts_end);
 
@@ -398,7 +398,7 @@ void xbt_os_cond_timedwait(xbt_os_cond_t cond, xbt_os_mutex_t mutex,
   } else {
     ts_end.tv_sec = (time_t) floor(end);
     ts_end.tv_nsec = (long) ((end - ts_end.tv_sec) * 1000000000);
-    DEBUG3("pthread_cond_timedwait(%p,%p,%p)", &(cond->c), &(mutex->m),
+    XBT_DEBUG("pthread_cond_timedwait(%p,%p,%p)", &(cond->c), &(mutex->m),
            &ts_end);
     switch ((errcode =
              pthread_cond_timedwait(&(cond->c), &(mutex->m), &ts_end))) {
@@ -539,7 +539,7 @@ void xbt_os_sem_timedacquire(xbt_os_sem_t sem, double delay)
 
     ts_end.tv_sec = (time_t) floor(end);
     ts_end.tv_nsec = (long) ((end - ts_end.tv_sec) * 1000000000);
-    DEBUG2("sem_timedwait(%p,%p)", sem->ps, &ts_end);
+    XBT_DEBUG("sem_timedwait(%p,%p)", sem->ps, &ts_end);
     errcode = sem_timedwait(sem->s, &ts_end);
 
 #else                           /* Okay, reimplement this function then */
@@ -620,6 +620,7 @@ typedef struct xbt_os_thread_ {
   unsigned long id;             /* the win thread id            */
   pvoid_f_pvoid_t start_routine;
   void *param;
+  void *extra_data;
 } s_xbt_os_thread_t;
 
 /* so we can specify the size of the stack of the threads */
@@ -670,7 +671,8 @@ static DWORD WINAPI wrapper_start_routine(void *s)
 
 xbt_os_thread_t xbt_os_thread_create(const char *name,
                                      pvoid_f_pvoid_t start_routine,
-                                     void *param)
+                                     void *param,
+                                     void *extra_data)
 {
 
   xbt_os_thread_t t = xbt_new(s_xbt_os_thread_t, 1);
@@ -678,7 +680,7 @@ xbt_os_thread_t xbt_os_thread_create(const char *name,
   t->name = xbt_strdup(name);
   t->start_routine = start_routine;
   t->param = param;
-
+  t->extra_data = extra_data;
   t->handle = CreateThread(NULL, XBT_DEFAULT_THREAD_STACK_SIZE,
                            (LPTHREAD_START_ROUTINE) wrapper_start_routine,
                            t, STACK_SIZE_PARAM_IS_A_RESERVATION, &(t->id));
@@ -909,7 +911,7 @@ void xbt_os_cond_timedwait(xbt_os_cond_t cond, xbt_os_mutex_t mutex,
   if (delay < 0) {
     xbt_os_cond_wait(cond, mutex);
   } else {
-    DEBUG3("xbt_cond_timedwait(%p,%p,%lu)", &(cond->events),
+    XBT_DEBUG("xbt_cond_timedwait(%p,%p,%lu)", &(cond->events),
            &(mutex->lock), end);
 
     /* lock the threads counter and increment it */