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

Commit 454e82ce authored by Elliot Berman's avatar Elliot Berman
Browse files

kernel: time: Restore original wheel index calculation



Restore original wheel index calculation for GKI builds.

Change-Id: Ia1afd393e1e33e6c1038159b0bf920775103cb92
Signed-off-by: default avatarElliot Berman <eberman@codeaurora.org>
parent 31f07c0c
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)
{