perf cpumap: Retrieve die id information
authorKan Liang <kan.liang@linux.intel.com>
Tue, 4 Jun 2019 22:50:40 +0000 (15:50 -0700)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Mon, 10 Jun 2019 18:50:02 +0000 (15:50 -0300)
There is no function to retrieve die id information of a given CPU.

Add cpu_map__get_die_id() to retrieve die id information.

Signed-off-by: Kan Liang <kan.liang@linux.intel.com>
Reviewed-by: Jiri Olsa <jolsa@kernel.org>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/1559688644-106558-1-git-send-email-kan.liang@linux.intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/cpumap.c
tools/perf/util/cpumap.h

index 0b599229bc7e93e1fad60dd6d62417ba8afa3073..7db1365c667efdbcb4d50fac10283933b1a410fd 100644 (file)
@@ -373,6 +373,13 @@ int cpu_map__build_map(struct cpu_map *cpus, struct cpu_map **res,
        return 0;
 }
 
+int cpu_map__get_die_id(int cpu)
+{
+       int value, ret = cpu__get_topology_int(cpu, "die_id", &value);
+
+       return ret ?: value;
+}
+
 int cpu_map__get_core_id(int cpu)
 {
        int value, ret = cpu__get_topology_int(cpu, "core_id", &value);
index f00ce624b9f7955ae079f06c43eb3dc64a3a397a..6762ff9e7ad5f47d1a84e1ae1938cb64cbf9349b 100644 (file)
@@ -25,6 +25,7 @@ size_t cpu_map__snprint_mask(struct cpu_map *map, char *buf, size_t size);
 size_t cpu_map__fprintf(struct cpu_map *map, FILE *fp);
 int cpu_map__get_socket_id(int cpu);
 int cpu_map__get_socket(struct cpu_map *map, int idx, void *data);
+int cpu_map__get_die_id(int cpu);
 int cpu_map__get_core_id(int cpu);
 int cpu_map__get_core(struct cpu_map *map, int idx, void *data);
 int cpu_map__build_socket_map(struct cpu_map *cpus, struct cpu_map **sockp);