Re: [PATCH 05/11] time/posix-timers:Convert to the 64bit methods for k_clock callback functions

Thomas Gleixner
2015-04-20T20:48:06Z

On Mon, 20 Apr 2015, Baolin Wang wrote:
> /* Set clock_realtime */
> static int posix_clock_realtime_set(const clockid_t which_clock,
> - const struct timespec *tp)
> + const struct timespec64 *tp)
> {
> - return do_sys_settimeofday(tp, NULL);
> + struct timespec ts = timespec64_to_timespec(*tp);
> +
> + return do_sys_settimeofday(&ts, NULL);

Sigh. No. We first provide a proper function for this, which takes a
timespec64, i.e. do_sys_settimeofday64() instead of having this
wrapper mess all over the place.

> /* SIGEV_NONE timers are not queued ! See common_timer_get */
> if (((timr->it_sigev_notify & ~SIGEV_THREAD_ID) == SIGEV_NONE)) {
> diff --git a/kernel/time/timekeeping.h b/kernel/time/timekeeping.h
> index 1d91416..144af14 100644
> --- a/kernel/time/timekeeping.h
> +++ b/kernel/time/timekeeping.h
> @@ -15,7 +15,7 @@ extern u64 timekeeping_max_deferment(void);
> extern int timekeeping_inject_offset(struct timespec *ts);
> extern s32 timekeeping_get_tai_offset(void);
> extern void timekeeping_set_tai_offset(s32 tai_offset);
> -extern void timekeeping_clocktai(struct timespec *ts);
> +extern void timekeeping_clocktai(struct timespec64 *ts);

# git grep timekeeping_clocktai() is your friend.

Thanks,

tglx