gettime: silence bogus gcc warnings
[fio.git] / gettime.c
index d1c8eb970c3cb4125022508b2cb43b3f36571843..8d99900c72819c70471115bac9cbd50f88d2671f 100644 (file)
--- a/gettime.c
+++ b/gettime.c
@@ -13,7 +13,8 @@
 #include "hash.h"
 #include "os/os.h"
 
-#if defined(ARCH_HAVE_CPU_CLOCK) && !defined(ARCH_CPU_CLOCK_CYCLES_PER_USEC)
+#if defined(ARCH_HAVE_CPU_CLOCK)
+#ifndef ARCH_CPU_CLOCK_CYCLES_PER_USEC
 static unsigned long cycles_per_usec;
 static unsigned long inv_cycles_per_usec;
 static uint64_t max_cycles_for_mult;
@@ -21,6 +22,7 @@ static uint64_t max_cycles_for_mult;
 #ifdef ARCH_CPU_CLOCK_WRAPS
 static unsigned long long cycles_start, cycles_wrap;
 #endif
+#endif
 int tsc_reliable = 0;
 
 struct tv_valid {
@@ -131,7 +133,9 @@ static void fio_init gtod_init(void)
 #ifdef CONFIG_CLOCK_GETTIME
 static int fill_clock_gettime(struct timespec *ts)
 {
-#ifdef CONFIG_CLOCK_MONOTONIC
+#if defined(CONFIG_CLOCK_MONOTONIC_RAW)
+       return clock_gettime(CLOCK_MONOTONIC_RAW, ts);
+#elif defined(CONFIG_CLOCK_MONOTONIC)
        return clock_gettime(CLOCK_MONOTONIC, ts);
 #else
        return clock_gettime(CLOCK_REALTIME, ts);
@@ -636,6 +640,8 @@ int fio_monotonic_clocktest(int debug)
 
        qsort(entries, tentries, sizeof(struct clock_entry), clock_cmp);
 
+       /* silence silly gcc */
+       prev = NULL;
        for (failed = i = 0; i < tentries; i++) {
                this = &entries[i];