[tip: sched/core] cpufreq/amd-pstate: Update asym_prefer_cpu when core rankings change
From: tip-bot2 for K Prateek Nayak
Date: Wed Apr 16 2025 - 15:16:58 EST
The following commit has been merged into the sched/core branch of tip:
Commit-ID: 8157fbc907452aa5674df2de23c1c7305c907006
Gitweb: https://git.kernel.org/tip/8157fbc907452aa5674df2de23c1c7305c907006
Author: K Prateek Nayak <kprateek.nayak@xxxxxxx>
AuthorDate: Wed, 09 Apr 2025 05:34:45
Committer: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
CommitterDate: Wed, 16 Apr 2025 21:09:11 +02:00
cpufreq/amd-pstate: Update asym_prefer_cpu when core rankings change
A subset of AMD systems supporting Preferred Core rankings can have
their rankings changed dynamically at runtime. Update the
"sg->asym_prefer_cpu" across the local hierarchy of CPU when the
preferred core ranking changes.
Signed-off-by: K Prateek Nayak <kprateek.nayak@xxxxxxx>
Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
Acked-by: Mario Limonciello <mario.limonciello@xxxxxxx>
Link: https://lore.kernel.org/r/20250409053446.23367-4-kprateek.nayak@xxxxxxx
---
drivers/cpufreq/amd-pstate.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/cpufreq/amd-pstate.c b/drivers/cpufreq/amd-pstate.c
index 6789eed..8796217 100644
--- a/drivers/cpufreq/amd-pstate.c
+++ b/drivers/cpufreq/amd-pstate.c
@@ -844,8 +844,10 @@ static void amd_pstate_update_limits(unsigned int cpu)
if (highest_perf_changed) {
WRITE_ONCE(cpudata->prefcore_ranking, cur_high);
- if (cur_high < CPPC_MAX_PERF)
+ if (cur_high < CPPC_MAX_PERF) {
sched_set_itmt_core_prio((int)cur_high, cpu);
+ sched_update_asym_prefer_cpu(cpu, prev_high, cur_high);
+ }
}
}