perf c2c: Fix report with offline cpus
authorRavi Bangoria <ravi.bangoria@linux.ibm.com>
Thu, 22 Aug 2019 08:50:45 +0000 (14:20 +0530)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 22 Aug 2019 20:16:57 +0000 (17:16 -0300)
If c2c is recorded on a machine where any cpus are offline, 'perf c2c
report' throws an error "node/cpu topology bugFailed setup nodes".

It fails because while preparing node-cpu mapping we don't consider
offline cpus.

Reported-by: Nageswara R Sastry <nasastry@in.ibm.com>
Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Fixes: 1e181b92a2da ("perf c2c report: Add 'node' sort key")
Link: http://lkml.kernel.org/r/20190822085045.25108-1-ravi.bangoria@linux.ibm.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/builtin-c2c.c

index 01629f5..2111437 100644 (file)
@@ -2027,7 +2027,7 @@ static int setup_nodes(struct perf_session *session)
                c2c.node_info = 2;
 
        c2c.nodes_cnt = session->header.env.nr_numa_nodes;
-       c2c.cpus_cnt  = session->header.env.nr_cpus_online;
+       c2c.cpus_cnt  = session->header.env.nr_cpus_avail;
 
        n = session->header.env.numa_nodes;
        if (!n)