diff options
-rw-r--r-- | sys/kern/kern_time.c | 5 | ||||
-rw-r--r-- | sys/sys/time.h | 1 |
2 files changed, 4 insertions, 2 deletions
diff --git a/sys/kern/kern_time.c b/sys/kern/kern_time.c index 4a8ef92..7dfa098 100644 --- a/sys/kern/kern_time.c +++ b/sys/kern/kern_time.c @@ -160,8 +160,9 @@ clock_gettime(struct thread *td, struct clock_gettime_args *uap) struct timespec ats; if (uap->clock_id != CLOCK_REALTIME) - return (EINVAL); - nanotime(&ats); + nanotime(&ats); + else if (uap->clock_id != CLOCK_MONOTONIC) + nanouptime(&ats); return (copyout(&ats, uap->tp, sizeof(ats))); } diff --git a/sys/sys/time.h b/sys/sys/time.h index 86d50a5..b713bb8 100644 --- a/sys/sys/time.h +++ b/sys/sys/time.h @@ -243,6 +243,7 @@ struct clockinfo { #endif #define CLOCK_VIRTUAL 1 #define CLOCK_PROF 2 +#define CLOCK_MONOTONIC 4 #define TIMER_RELTIME 0x0 /* relative timer */ #ifndef TIMER_ABSTIME |