CLOCK_HIGHRES
if (timer_create(CLOCK_HIGHRES, &ev, &g_tid) == -1)
*clock = CLOCK_HIGHRES;
if (clock_id != CLOCK_REALTIME && clock_id != CLOCK_HIGHRES)
(clock_id == CLOCK_REALTIME || clock_id == CLOCK_HIGHRES)) {
case CLOCK_HIGHRES:
case CLOCK_HIGHRES:
case CLOCK_HIGHRES:
case CLOCK_HIGHRES:
case CLOCK_HIGHRES:
if (clock_id == CLOCK_HIGHRES)
if (error == 0 && clock_id == CLOCK_HIGHRES) {
case CLOCK_HIGHRES:
case CLOCK_HIGHRES:
case CLOCK_HIGHRES:
case CLOCK_HIGHRES:
if (clock_id != CLOCK_REALTIME && clock_id != CLOCK_HIGHRES)
if (error == ETIME && clock_id == CLOCK_HIGHRES) {
case CLOCK_HIGHRES:
case CLOCK_HIGHRES:
clock_rel_to_abs(CLOCK_HIGHRES, &clock_to_100ms, &to);
p = pthread_cond_clockwait(&cc->cc_cond, &cc->cc_mutex, CLOCK_HIGHRES,
elapse = clock_abs_after(CLOCK_HIGHRES, &to);
if (clock_gettime(CLOCK_HIGHRES, &start) != 0) {
err(EXIT_FAILURE, "failed to read clock %d", CLOCK_HIGHRES);
CLOCK_HIGHRES, &clock_to_100ms);
elapse = clock_rel_after(CLOCK_HIGHRES, &start, &clock_to_100ms);
CLOCK_HIGHRES, &clock_to_100ms)) != EPERM) {
clock_rel_to_abs(CLOCK_HIGHRES, &clock_to_100ms, &to);
p = pthread_mutex_clocklock(mutex, CLOCK_HIGHRES, &to);
elapse = clock_abs_after(CLOCK_HIGHRES, &to);
if (clock_gettime(CLOCK_HIGHRES, &start) != 0) {
err(EXIT_FAILURE, "failed to read clock %d", CLOCK_HIGHRES);
p = pthread_mutex_relclocklock_np(mutex, CLOCK_HIGHRES,
elapse = clock_rel_after(CLOCK_HIGHRES, &start, &clock_to_100ms);
clock_rel_to_abs(CLOCK_HIGHRES, &clock_to_100ms, &to);
p = pthread_rwlock_clockrdlock(rwl, CLOCK_HIGHRES, &to);
elapse = clock_abs_after(CLOCK_HIGHRES, &to);
clock_rel_to_abs(CLOCK_HIGHRES, &clock_to_100ms, &to);
p = pthread_rwlock_clockwrlock(rwl, CLOCK_HIGHRES, &to);
elapse = clock_abs_after(CLOCK_HIGHRES, &to);
if (clock_gettime(CLOCK_HIGHRES, &start) != 0) {
err(EXIT_FAILURE, "failed to read clock %d", CLOCK_HIGHRES);
p = pthread_rwlock_relclockrdlock_np(rwl, CLOCK_HIGHRES,
elapse = clock_rel_after(CLOCK_HIGHRES, &start, &clock_to_100ms);
if (clock_gettime(CLOCK_HIGHRES, &start) != 0) {
err(EXIT_FAILURE, "failed to read clock %d", CLOCK_HIGHRES);
p = pthread_rwlock_relclockwrlock_np(rwl, CLOCK_HIGHRES,
elapse = clock_rel_after(CLOCK_HIGHRES, &start, &clock_to_100ms);
clock_rel_to_abs(CLOCK_HIGHRES, &clock_to_100ms, &to);
p = sem_clockwait(sem, CLOCK_HIGHRES, &to);
elapse = clock_abs_after(CLOCK_HIGHRES, &to);
if (clock_gettime(CLOCK_HIGHRES, &start) != 0) {
err(EXIT_FAILURE, "failed to read clock %d", CLOCK_HIGHRES);
p = sem_relclockwait_np(sem, CLOCK_HIGHRES,
elapse = clock_rel_after(CLOCK_HIGHRES, &start, &clock_to_100ms);
{ TIME_MONOTONIC, CLOCK_HIGHRES, "highres clock" },
{ TIME_MONOTONIC, CLOCK_HIGHRES, "highres clock" },
{ CLOCK_HIGHRES, gethrtime, "highres" },
assert(timer_create(CLOCK_HIGHRES, &sigev, &tid) == 0);
clock_add_backend(CLOCK_HIGHRES, &clock_highres);