From 99afcdb53dc388edcc1270fe2f76d8ce1a3f9f3c Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Fri, 20 Nov 2015 17:20:06 -0700 Subject: [PATCH] gettime: make cpuclock calibration more tolerant Signed-off-by: Jens Axboe --- gettime.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gettime.c b/gettime.c index 9988e6c5..922768eb 100644 --- a/gettime.c +++ b/gettime.c @@ -232,6 +232,7 @@ static unsigned long get_cycles_per_usec(void) struct timeval s, e; uint64_t c_s, c_e; enum fio_cs old_cs = fio_clock_source; + uint64_t elapsed; #ifdef CONFIG_CLOCK_GETTIME fio_clock_source = CS_CGETTIME; @@ -242,8 +243,6 @@ static unsigned long get_cycles_per_usec(void) c_s = get_cpu_clock(); do { - uint64_t elapsed; - __fio_gettime(&e); elapsed = utime_since(&s, &e); @@ -254,7 +253,7 @@ static unsigned long get_cycles_per_usec(void) } while (1); fio_clock_source = old_cs; - return (c_e - c_s + 127) >> 7; + return ((c_e - c_s) * 10) / elapsed; } #define NR_TIME_ITERS 50 -- 2.25.1