ipmi: Change to ktime_get_ts64()
authorArnd Bergmann <arnd@arndb.de>
Mon, 18 Jun 2018 14:27:09 +0000 (16:27 +0200)
committerCorey Minyard <cminyard@mvista.com>
Tue, 18 Sep 2018 21:15:33 +0000 (16:15 -0500)
getnstimeofday64() is deprecated because of the inconsistent naming,
it is only a wrapper around ktime_get_real_ts64() now, which could be
used as a direct replacement.

However, it is generally better to use CLOCK_MONOTONIC timestamps
where possible, to avoid glitches with a concurrent settimeofday()
or leap second.

The uses in ipmi are either for debugging prints or for comparing against
a prior timestamp, so using a monotonic ktime_get_ts64() is probably
best here.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Corey Minyard <cminyard@mvista.com>
drivers/char/ipmi/ipmi_si_intf.c

index 132bb508cd19a2b2591e00ac273d87c752a76572..677618e6f1f72ffec031b7ee0e698e4d690bf793 100644 (file)
@@ -269,7 +269,7 @@ void debug_timestamp(char *msg)
 {
        struct timespec64 t;
 
-       getnstimeofday64(&t);
+       ktime_get_ts64(&t);
        pr_debug("**%s: %lld.%9.9ld\n", msg, (long long) t.tv_sec, t.tv_nsec);
 }
 #else
@@ -961,12 +961,12 @@ static inline int ipmi_thread_busy_wait(enum si_sm_result smi_result,
        if (max_busy_us == 0 || smi_result != SI_SM_CALL_WITH_DELAY)
                ipmi_si_set_not_busy(busy_until);
        else if (!ipmi_si_is_busy(busy_until)) {
-               getnstimeofday64(busy_until);
+               ktime_get_ts64(busy_until);
                timespec64_add_ns(busy_until, max_busy_us*NSEC_PER_USEC);
        } else {
                struct timespec64 now;
 
-               getnstimeofday64(&now);
+               ktime_get_ts64(&now);
                if (unlikely(timespec64_compare(&now, busy_until) > 0)) {
                        ipmi_si_set_not_busy(busy_until);
                        return 0;