Message ID | 20230918112937.493352-2-pierre.gondois@arm.com |
---|---|
State | Superseded |
Headers | show |
Series | cpufreq: Rebuild sched-domains when removing cpufreq driver | expand |
diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c index 60ed89000e82..0a4979c34fd1 100644 --- a/drivers/cpufreq/cpufreq.c +++ b/drivers/cpufreq/cpufreq.c @@ -1673,6 +1673,8 @@ static void __cpufreq_offline(unsigned int cpu, struct cpufreq_policy *policy) cpufreq_driver->exit(policy); policy->freq_table = NULL; } + + sched_cpufreq_governor_change(policy, policy->governor); } static int cpufreq_offline(unsigned int cpu)
The Energy Aware Scheduler (EAS) relies on the schedutil governor. When moving to/from the schedutil governor, sched domains must be rebuilt to allow re-evaluating the enablement conditions of EAS. This is done through sched_cpufreq_governor_change(). Having a cpufreq governor assumes having a cpufreq driver running. Inserting/removing a cpufreq driver should trigger a re-evaluation of EAS enablement conditions, avoiding to see EAS enabled when removing a running cpufreq driver. Add a sched_cpufreq_governor_change() call in cpufreq driver removal path. Signed-off-by: Pierre Gondois <pierre.gondois@arm.com> --- drivers/cpufreq/cpufreq.c | 2 ++ 1 file changed, 2 insertions(+)