X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=gettime.h;h=f92ee8c430c8d9cdb48f31effabd885af07c9257;hp=86d55bd9d6298b69de406a3d7209184ba786db0a;hb=1cce3c66140206967462f85646a50b0065da87e9;hpb=76b4a7ef86098f6453b9438fe0905a40f01f854b diff --git a/gettime.h b/gettime.h index 86d55bd9..f92ee8c4 100644 --- a/gettime.h +++ b/gettime.h @@ -1,6 +1,8 @@ #ifndef FIO_GETTIME_H #define FIO_GETTIME_H +#include + #include "arch/arch.h" /* @@ -13,27 +15,27 @@ enum fio_cs { CS_INVAL, }; -extern void fio_gettime(struct timeval *, void *); +extern void fio_gettime(struct timespec *, void *); extern void fio_gtod_init(void); extern void fio_clock_init(void); extern int fio_start_gtod_thread(void); extern int fio_monotonic_clocktest(int debug); -extern void fio_local_clock_init(int); +extern void fio_local_clock_init(void); -extern struct timeval *fio_tv; +extern struct timespec *fio_ts; -static inline int fio_gettime_offload(struct timeval *tv) +static inline int fio_gettime_offload(struct timespec *ts) { time_t last_sec; - if (!fio_tv) + if (!fio_ts) return 0; do { read_barrier(); - last_sec = tv->tv_sec = fio_tv->tv_sec; - tv->tv_usec = fio_tv->tv_usec; - } while (fio_tv->tv_sec != last_sec); + last_sec = ts->tv_sec = fio_ts->tv_sec; + ts->tv_nsec = fio_ts->tv_nsec; + } while (fio_ts->tv_sec != last_sec); return 1; }