int timer_gettime( timer_t id, struct itimerspec* ospec ) { if (ospec == NULL) { errno = EINVAL; return -1; } if ( __likely(!TIMER_ID_IS_WRAPPED(id)) ) { return __timer_gettime( id, ospec ); } else { thr_timer_t* timer = thr_timer_from_id(id); if (timer == NULL) { errno = EINVAL; return -1; } thr_timer_lock(timer); timer_gettime_internal( timer, ospec ); thr_timer_unlock(timer); } return 0; }
// http://pubs.opengroup.org/onlinepubs/9699919799/functions/timer_getoverrun.html int timer_gettime(timer_t id, itimerspec* ts) { return __timer_gettime(to_kernel_timer_id(id), ts); }