Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

sched/cpufreq: Ensure sd is rebuilt for EAS check

Ensure sugov_eas_rebuild_sd() is always called when sugov_init()
succeeds. The out goto initialized sugov without forcing the rebuild.

Previously the missing call to sugov_eas_rebuild_sd() could lead to EAS
not being enabled on boot when it should have been, because it requires
all policies to be controlled by schedutil while they might not have
been initialized yet.

Fixes: e7a1b32e43b1 ("cpufreq: Rebuild sched-domains when removing cpufreq driver")
Signed-off-by: Christian Loehle <christian.loehle@arm.com>
Link: https://patch.msgid.link/35e572d9-1152-406a-9e34-2525f7548af9@arm.com
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

authored by

Christian Loehle and committed by
Rafael J. Wysocki
70d8b648 22077269

+1 -2
+1 -2
kernel/sched/cpufreq_schedutil.c
··· 783 783 if (ret) 784 784 goto fail; 785 785 786 - sugov_eas_rebuild_sd(); 787 - 788 786 out: 787 + sugov_eas_rebuild_sd(); 789 788 mutex_unlock(&global_tunables_lock); 790 789 return 0; 791 790