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

Commit f81e2b21 authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "kernel: time: Restore original wheel index calculation"

parents 1ba8da95 454e82ce
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -491,6 +491,13 @@ static inline void timer_set_idx(struct timer_list *timer, unsigned int idx)
 * Helper function to calculate the array index for a given expiry
 * time.
 */
#ifndef CONFIG_SCHED_WALT
static inline unsigned calc_index(unsigned expires, unsigned lvl)
{
	expires = (expires + LVL_GRAN(lvl)) >> LVL_SHIFT(lvl);
	return LVL_OFFS(lvl) + (expires & LVL_MASK);
}
#else
static inline unsigned calc_index(unsigned expires, unsigned lvl)
{
	if (lvl != 0 && (expires & ~(UINT_MAX << LVL_SHIFT(lvl))))
@@ -500,6 +507,7 @@ static inline unsigned calc_index(unsigned expires, unsigned lvl)

	return LVL_OFFS(lvl) + (expires & LVL_MASK);
}
#endif

static int calc_wheel_index(unsigned long expires, unsigned long clk)
{