@@ -25,7 +25,7 @@ struct timespec __current_kernel_time(void);
/*
* timespec based interfaces
*/
-struct timespec get_monotonic_coarse(void);
+struct timespec64 get_monotonic_coarse64(void);
extern void getrawmonotonic64(struct timespec64 *ts);
extern void ktime_get_ts64(struct timespec64 *ts);
@@ -66,6 +66,10 @@ static inline void getrawmonotonic(struct timespec *ts)
getrawmonotonic64(ts);
}
+static inline struct timespec get_monotonic_coarse(void)
+{
+ return get_monotonic_coarse64();
+}
#else
/**
* Deprecated. Use do_settimeofday64().
@@ -118,6 +122,11 @@ static inline void getrawmonotonic(struct timespec *ts)
getrawmonotonic64(&ts64);
*ts = timespec64_to_timespec(ts64);
}
+
+static inline struct timespec get_monotonic_coarse(void)
+{
+ return timespec64_to_timespec(get_monotonic_coarse64());
+}
#endif
extern void getboottime(struct timespec *ts);
@@ -1644,7 +1644,7 @@ struct timespec current_kernel_time(void)
}
EXPORT_SYMBOL(current_kernel_time);
-struct timespec get_monotonic_coarse(void)
+struct timespec64 get_monotonic_coarse64(void)
{
struct timekeeper *tk = &tk_core.timekeeper;
struct timespec64 now, mono;
@@ -1660,7 +1660,7 @@ struct timespec get_monotonic_coarse(void)
set_normalized_timespec64(&now, now.tv_sec + mono.tv_sec,
now.tv_nsec + mono.tv_nsec);
- return timespec64_to_timespec(now);
+ return now;
}
/*
Adds a timespec64 based get_monotonic_coarse64() implementation that can be used as we convert internal users of get_monotonic_corase away from usingtimespecs. Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@elte.hu> Cc: Arnd Bergmann <arnd.bergmann@linaro.org> Cc: pang.xunlei <pang.xunlei@linaro.org> Cc: Miroslav Lichvar <mlichvar@redhat.com> Cc: Richard Cochran <richardcochran@gmail.com> Cc: Prarit Bhargava <prarit@redhat.com> Cc: Alessandro Zummo <a.zummo@towertech.it> Signed-off-by: John Stultz <john.stultz@linaro.org> --- include/linux/timekeeping.h | 11 ++++++++++- kernel/time/timekeeping.c | 4 ++-- 2 files changed, 12 insertions(+), 3 deletions(-)