thermal/cpufreq: Remove arch_update_thermal_pressure()
authorVincent Guittot <vincent.guittot@linaro.org>
Tue, 26 Mar 2024 09:16:14 +0000 (10:16 +0100)
committerIngo Molnar <mingo@kernel.org>
Wed, 24 Apr 2024 10:08:00 +0000 (12:08 +0200)
arch_update_thermal_pressure() aims to update fast changing signal which
should be averaged using PELT filtering before being provided to the
scheduler which can't make smart use of fast changing signal.
cpufreq now provides the maximum freq_qos pressure on the capacity to the
scheduler, which includes cpufreq cooling device. Remove the call to
arch_update_thermal_pressure() in cpufreq cooling device as this is
handled by cpufreq_get_pressure().

Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Tested-by: Lukasz Luba <lukasz.luba@arm.com>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Reviewed-by: Dhruva Gole <d-gole@ti.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Link: https://lore.kernel.org/r/20240326091616.3696851-4-vincent.guittot@linaro.org
drivers/thermal/cpufreq_cooling.c

index 9d1b1459700df5650bcf595dceef2b9a35394d3f..280071be30b1571f03fa8eeec7608e2290751ee0 100644 (file)
@@ -477,7 +477,6 @@ static int cpufreq_set_cur_state(struct thermal_cooling_device *cdev,
                                 unsigned long state)
 {
        struct cpufreq_cooling_device *cpufreq_cdev = cdev->devdata;
-       struct cpumask *cpus;
        unsigned int frequency;
        int ret;
 
@@ -494,8 +493,6 @@ static int cpufreq_set_cur_state(struct thermal_cooling_device *cdev,
        ret = freq_qos_update_request(&cpufreq_cdev->qos_req, frequency);
        if (ret >= 0) {
                cpufreq_cdev->cpufreq_state = state;
-               cpus = cpufreq_cdev->policy->related_cpus;
-               arch_update_thermal_pressure(cpus, frequency);
                ret = 0;
        }