Commit 198fa445 authored by Andrei Vagin's avatar Andrei Vagin Committed by Thomas Gleixner
Browse files

posix-timers: Use clock_get_ktime() in common_timer_get()



Now, when the clock_get_ktime() callback exists, the suboptimal
timespec64-based conversion can be removed from common_timer_get().

Suggested-by: default avatarThomas Gleixner <tglx@linutronix.de>
Co-developed-by: default avatarDmitry Safonov <dima@arista.com>
Signed-off-by: default avatarAndrei Vagin <avagin@gmail.com>
Signed-off-by: default avatarDmitry Safonov <dima@arista.com>
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/r/20191112012724.250792-11-dima@arista.com
parent 9c71a2e8
Loading
Loading
Loading
Loading
+1 −7
Original line number Diff line number Diff line
@@ -665,7 +665,6 @@ void common_timer_get(struct k_itimer *timr, struct itimerspec64 *cur_setting)
{
	const struct k_clock *kc = timr->kclock;
	ktime_t now, remaining, iv;
	struct timespec64 ts64;
	bool sig_none;

	sig_none = timr->it_sigev_notify == SIGEV_NONE;
@@ -683,12 +682,7 @@ void common_timer_get(struct k_itimer *timr, struct itimerspec64 *cur_setting)
			return;
	}

	/*
	 * The timespec64 based conversion is suboptimal, but it's not
	 * worth to implement yet another callback.
	 */
	kc->clock_get_timespec(timr->it_clock, &ts64);
	now = timespec64_to_ktime(ts64);
	now = kc->clock_get_ktime(timr->it_clock);

	/*
	 * When a requeue is pending or this is a SIGEV_NONE timer move the