mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-04-02 05:51:14 -04:00
tools/power turbostat: Rename physical_core_id to core_id
The Linux Kernel topology sysfs is flawed.
core_id is not globally unique, but is per-package.
Turbostat works around this when it needs to, with
rapl_core_id = cpus[cpu].core_id;
rapl_core_id += cpus[cpu].package_id * nr_cores_per_package
Otherwise, turbostat handles core_id as subservient to each package.
As there is only one core_id namespace, rename
physical_core_id to simply be core_id.
No functional change.
Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
@@ -2394,13 +2394,13 @@ struct platform_counters {
|
||||
} platform_counters_odd, platform_counters_even;
|
||||
|
||||
struct cpu_topology {
|
||||
int core_id;
|
||||
int package_id;
|
||||
int die_id;
|
||||
int l3_id;
|
||||
int logical_cpu_id;
|
||||
int physical_node_id;
|
||||
int logical_node_id; /* 0-based count within the package */
|
||||
int physical_core_id;
|
||||
int thread_id;
|
||||
int type;
|
||||
cpu_set_t *put_ids; /* Processing Unit/Thread IDs */
|
||||
@@ -2658,7 +2658,7 @@ unsigned int cpu_to_domain(const struct perf_counter_info *pc, int cpu)
|
||||
return cpu;
|
||||
|
||||
case SCOPE_CORE:
|
||||
return cpus[cpu].physical_core_id;
|
||||
return cpus[cpu].core_id;
|
||||
|
||||
case SCOPE_PACKAGE:
|
||||
return cpus[cpu].package_id;
|
||||
@@ -5180,7 +5180,7 @@ static inline int get_rapl_domain_id(int cpu)
|
||||
return cpus[cpu].package_id;
|
||||
|
||||
/* Compute the system-wide unique core-id for @cpu */
|
||||
rapl_core_id = cpus[cpu].physical_core_id;
|
||||
rapl_core_id = cpus[cpu].core_id;
|
||||
rapl_core_id += cpus[cpu].package_id * nr_cores_per_package;
|
||||
|
||||
return rapl_core_id;
|
||||
@@ -6216,7 +6216,7 @@ int get_thread_siblings(struct cpu_topology *thiscpu)
|
||||
if ((map >> shift) & 0x1) {
|
||||
so = shift + offset;
|
||||
sib_core = get_core_id(so);
|
||||
if (sib_core == thiscpu->physical_core_id) {
|
||||
if (sib_core == thiscpu->core_id) {
|
||||
CPU_SET_S(so, size, thiscpu->put_ids);
|
||||
if ((so != cpu) && (cpus[so].thread_id < 0))
|
||||
cpus[so].thread_id = thread_id++;
|
||||
@@ -8948,7 +8948,7 @@ void cstate_perf_init_(bool soft_c1)
|
||||
if (cpu_is_not_allowed(cpu))
|
||||
continue;
|
||||
|
||||
const int core_id = cpus[cpu].physical_core_id;
|
||||
const int core_id = cpus[cpu].core_id;
|
||||
const int pkg_id = cpus[cpu].package_id;
|
||||
|
||||
assert(core_id < cores_visited_elems);
|
||||
@@ -9629,9 +9629,9 @@ void topology_probe(bool startup)
|
||||
topo.max_node_num = cpus[i].physical_node_id;
|
||||
|
||||
/* get core information */
|
||||
cpus[i].physical_core_id = get_core_id(i);
|
||||
if (cpus[i].physical_core_id > max_core_id)
|
||||
max_core_id = cpus[i].physical_core_id;
|
||||
cpus[i].core_id = get_core_id(i);
|
||||
if (cpus[i].core_id > max_core_id)
|
||||
max_core_id = cpus[i].core_id;
|
||||
|
||||
/* get thread information */
|
||||
siblings = get_thread_siblings(&cpus[i]);
|
||||
@@ -9683,7 +9683,7 @@ void topology_probe(bool startup)
|
||||
fprintf(outf,
|
||||
"cpu %d pkg %d die %d l3 %d node %d lnode %d core %d thread %d\n",
|
||||
i, cpus[i].package_id, cpus[i].die_id, cpus[i].l3_id,
|
||||
cpus[i].physical_node_id, cpus[i].logical_node_id, cpus[i].physical_core_id, cpus[i].thread_id);
|
||||
cpus[i].physical_node_id, cpus[i].logical_node_id, cpus[i].core_id, cpus[i].thread_id);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -9731,7 +9731,7 @@ void init_counter(struct thread_data *thread_base, struct core_data *core_base,
|
||||
{
|
||||
int pkg_id = cpus[cpu_id].package_id;
|
||||
int node_id = cpus[cpu_id].logical_node_id;
|
||||
int core_id = cpus[cpu_id].physical_core_id;
|
||||
int core_id = cpus[cpu_id].core_id;
|
||||
int thread_id = cpus[cpu_id].thread_id;
|
||||
struct thread_data *t;
|
||||
struct core_data *c;
|
||||
|
||||
Reference in New Issue
Block a user