sched/walt: use do_div instead of division operator

Use do_div() instead of "/" operator to fix undefined references to
"__aeabi_uldivmod" build error for ARCH=arm.

Also in TP_fast_assign(), along with do_div() usage,  replace "," with
";" which would have resulted in a syntax error (!), because
'#define TP_fast_assign(args...) args' would have stripped off the ","
and left white space between these two assignments after CPP phase.

Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
[jstultz: Cherry-picked from common/android-3.18]
Signed-off-by: John Stultz <john.stultz@linaro.org>
This commit is contained in:
Amit Pundir
2016-08-24 11:52:17 +05:30
committed by John Stultz
parent 6c7e03dde1
commit aeb4a3112e
2 changed files with 6 additions and 4 deletions

View File

@@ -1057,7 +1057,8 @@ TRACE_EVENT(walt_update_history,
__entry->samples = samples;
__entry->evt = evt;
__entry->demand = p->ravg.demand;
__entry->walt_avg = (__entry->demand << 10) / walt_ravg_window,
__entry->walt_avg = (__entry->demand << 10);
do_div(__entry->walt_avg, walt_ravg_window);
__entry->pelt_avg = p->se.avg.util_avg;
memcpy(__entry->hist, p->ravg.sum_history,
RAVG_HIST_SIZE_MAX * sizeof(u32));

View File

@@ -1577,9 +1577,10 @@ static inline unsigned long __cpu_util(int cpu, int delta)
unsigned long capacity = capacity_orig_of(cpu);
#ifdef CONFIG_SCHED_WALT
if (!walt_disabled && sysctl_sched_use_walt_cpu_util)
util = (cpu_rq(cpu)->prev_runnable_sum << SCHED_LOAD_SHIFT) /
walt_ravg_window;
if (!walt_disabled && sysctl_sched_use_walt_cpu_util) {
util = cpu_rq(cpu)->prev_runnable_sum << SCHED_LOAD_SHIFT;
do_div(util, walt_ravg_window);
}
#endif
delta += util;
if (delta < 0)