Commit-ID:  684ad537abff987886d63fb3c573eeca40d7f2db
Gitweb:     https://git.kernel.org/tip/684ad537abff987886d63fb3c573eeca40d7f2db
Author:     Pavel Tatashin <pasha.tatas...@oracle.com>
AuthorDate: Wed, 25 Jul 2018 16:00:18 -0400
Committer:  Thomas Gleixner <t...@linutronix.de>
CommitDate: Mon, 30 Jul 2018 19:32:29 +0200

timekeeping: Prevent false warning when persistent clock is not available

On arches with no persistent clock a message like this is printed during
boot:

[    0.000000] Persistent clock returned invalid value

The value is not invalid: Zero means that no persistent clock is available
and the absence of persistent clock should be quietly accepted.

Fixes: 3eca993740b8 ("timekeeping: Replace read_boot_clock64() with 
read_persistent_wall_and_boot_offset()")
Signed-off-by: Pavel Tatashin <pasha.tatas...@oracle.com>
Signed-off-by: Thomas Gleixner <t...@linutronix.de>
Cc: steven.sist...@oracle.com
Cc: daniel.m.jor...@oracle.com
Cc: sb...@kernel.org
Cc: john.stu...@linaro.org
Link: https://lkml.kernel.org/r/20180725200018.23722-1-pasha.tatas...@oracle.com
---
 kernel/time/timekeeping.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
index 30d7f64ffc87..6183e7460138 100644
--- a/kernel/time/timekeeping.c
+++ b/kernel/time/timekeeping.c
@@ -1536,7 +1536,7 @@ void __init timekeeping_init(void)
        if (timespec64_valid_strict(&wall_time) &&
            timespec64_to_ns(&wall_time) > 0) {
                persistent_clock_exists = true;
-       } else {
+       } else if (timespec64_to_ns(&wall_time) != 0) {
                pr_warn("Persistent clock returned invalid value");
                wall_time = (struct timespec64){0};
        }

Reply via email to