PM: EM: fix wrong utilization estimation in em_cpu_energy()
authorVincent Guittot <vincent.guittot@linaro.org>
Thu, 4 Apr 2024 10:42:00 +0000 (12:42 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 4 Apr 2024 17:27:53 +0000 (19:27 +0200)
Commit 1b600da51073 ("PM: EM: Optimize em_cpu_energy() and remove division")
has added back map_util_perf() in em_cpu_energy() computation which has
been removed with the rework of scheduler/cpufreq interface.
This is wrong because sugov_effective_cpu_perf() already takes care of
mapping the utilization to a performance level.

Fixes: 1b600da51073 ("PM: EM: Optimize em_cpu_energy() and remove division")
Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
include/linux/energy_model.h

index 770755df852f14b31be1cefa5e37693acd6a0421..70cd7258cd29f5fc1396762f239908322ec97933 100644 (file)
@@ -245,7 +245,6 @@ static inline unsigned long em_cpu_energy(struct em_perf_domain *pd,
         * max utilization to the allowed CPU capacity before calculating
         * effective performance.
         */
-       max_util = map_util_perf(max_util);
        max_util = min(max_util, allowed_cpu_cap);
 
        /*