Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e2787630 authored by Thomas Gleixner's avatar Thomas Gleixner
Browse files

[hrtimer] Change resolution storage to ktime_t format



Change the storage format of the per base resolution to ktime_t to
make it easier accessible in the hrtimers code.

Change the resolution from (NSEC_PER_SEC/HZ) to TICK_NSEC as Roman
pointed out. TICK_NSEC is closer to the real resolution.

Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
parent 288867ec
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -85,7 +85,7 @@ struct hrtimer_base {
	spinlock_t		lock;
	struct rb_root		active;
	struct rb_node		*first;
	unsigned long		resolution;
	ktime_t			resolution;
	ktime_t			(*get_time)(void);
	struct hrtimer		*curr_timer;
};
+2 −2
Original line number Diff line number Diff line
@@ -272,8 +272,8 @@ static inline u64 ktime_to_ns(const ktime_t kt)
 * idea of the (in)accuracy of timers. Timer values are rounded up to
 * this resolution values.
 */
#define KTIME_REALTIME_RES	(NSEC_PER_SEC/HZ)
#define KTIME_MONOTONIC_RES	(NSEC_PER_SEC/HZ)
#define KTIME_REALTIME_RES	(ktime_t){ .tv64 = TICK_NSEC }
#define KTIME_MONOTONIC_RES	(ktime_t){ .tv64 = TICK_NSEC }

/* Get the monotonic time in timespec format: */
extern void ktime_get_ts(struct timespec *ts);
+1 −2
Original line number Diff line number Diff line
@@ -518,9 +518,8 @@ int hrtimer_get_res(const clockid_t which_clock, struct timespec *tp)
{
	struct hrtimer_base *bases;

	tp->tv_sec = 0;
	bases = per_cpu(hrtimer_bases, raw_smp_processor_id());
	tp->tv_nsec = bases[which_clock].resolution;
	*tp = ktime_to_timespec(bases[which_clock].resolution);

	return 0;
}