diff options
Diffstat (limited to 'kernel/sched/core.c')
| -rw-r--r-- | kernel/sched/core.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 839925a3da7e..263c15b0312e 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -1941,9 +1941,10 @@ static inline u64 scale_exec_time(u64 delta, struct rq *rq) { int cpu = cpu_of(rq); int sf; + u32 freq; - delta = DIV64_U64_ROUNDUP(delta * rq->cc.cycles, - max_possible_freq * rq->cc.time); + freq = cpu_cycles_to_freq(rq->cc.cycles, rq->cc.time); + delta = DIV64_U64_ROUNDUP(delta * freq, max_possible_freq); sf = DIV_ROUND_UP(cpu_efficiency(cpu) * 1024, max_possible_efficiency); delta *= sf; |
