[PATCH 1/1] tools/power turbostat: Fix AMD RAPL regression

From: Len Brown

Date: Wed Feb 18 2026 - 00:45:19 EST


From: Len Brown <len.brown@xxxxxxxxx>

turbostat.c:8688: rapl_perf_init: Assertion `next_domain < num_domains' failed.

Two recent cleanup patches that were not supposed to change anything
broke the core_id code needed for AMD RAPL initialization:

commit 070e92361eec ("tools/power turbostat: Enhance HT enumeration")
commit ddf60e38ca04 ("tools/power turbostat: Simplify global core_id calculation")

Reported-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>
---
tools/power/x86/turbostat/turbostat.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/tools/power/x86/turbostat/turbostat.c b/tools/power/x86/turbostat/turbostat.c
index 1aace9b3269e..1a2671c28209 100644
--- a/tools/power/x86/turbostat/turbostat.c
+++ b/tools/power/x86/turbostat/turbostat.c
@@ -5164,7 +5164,7 @@ static inline int get_rapl_domain_id(int cpu)
if (!platform->has_per_core_rapl)
return cpus[cpu].package_id;

- return GLOBAL_CORE_ID(cpu, cpus[cpu].package_id);
+ return GLOBAL_CORE_ID(cpus[cpu].core_id, cpus[cpu].package_id);
}

/*
@@ -9633,7 +9633,6 @@ void topology_probe(bool startup)
}
topo.max_core_id = max_core_id; /* within a package */
topo.max_package_id = max_package_id;
- topo.num_cores = (max_core_id + 1) * topo.num_packages; /* per system */

topo.cores_per_node = max_core_id + 1;
if (debug > 1)
--
2.45.2