kselftests: timers: Fix inconsistency-check to not ignore first timestamp
authorMiroslav Lichvar <mlichvar@redhat.com>
Tue, 13 Jun 2017 10:57:07 +0000 (12:57 +0200)
committerJohn Stultz <john.stultz@linaro.org>
Wed, 21 Jun 2017 05:14:11 +0000 (22:14 -0700)
When the first timestamp in the list of clock readings was later than
the second timestamp and all other timestamps were in order, the
inconsistency was not reported because the index of the out-of-order
timestamp was equal to the default value.

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Miroslav Lichvar <mlichvar@redhat.com>
Cc: Richard Cochran <richardcochran@gmail.com>
Cc: Prarit Bhargava <prarit@redhat.com>
Cc: Stephen Boyd <stephen.boyd@linaro.org>
Cc: Shuah Khan <shuah@kernel.org>
Signed-off-by: Miroslav Lichvar <mlichvar@redhat.com>
Signed-off-by: John Stultz <john.stultz@linaro.org>
tools/testing/selftests/timers/inconsistency-check.c

index caf1bc9..74c60e8 100644 (file)
@@ -118,7 +118,7 @@ int consistency_test(int clock_type, unsigned long seconds)
        start_str = ctime(&t);
 
        while (seconds == -1 || now - then < seconds) {
-               inconsistent = 0;
+               inconsistent = -1;
 
                /* Fill list */
                for (i = 0; i < CALLS_PER_LOOP; i++)
@@ -130,7 +130,7 @@ int consistency_test(int clock_type, unsigned long seconds)
                                inconsistent = i;
 
                /* display inconsistency */
-               if (inconsistent) {
+               if (inconsistent >= 0) {
                        unsigned long long delta;
 
                        printf("\%s\n", start_str);