return pthread_cond_tw_rel(cond, mutex, &reltime);
return pthread_cond_tw_rel(cond, mutex, abstime);
int pthread_cond_timedwait(pthread_cond_t *cond, pthread_mutex_t *mutex,                           const struct timespec * abstime){  struct timeval now;  struct timespec reltime;  /* Compute a time offset relative to now.  */  __gettimeofday (&now, NULL);  reltime.tv_nsec = abstime->tv_nsec - now.tv_usec * 1000;  reltime.tv_sec = abstime->tv_sec - now.tv_sec;  if (reltime.tv_nsec < 0) {    reltime.tv_nsec += 1000000000;    reltime.tv_sec -= 1;  }  if (reltime.tv_sec < 0)    return ETIMEDOUT;  /* Indirect call through pointer! */  return pthread_cond_tw_rel(cond, mutex, &reltime);}