>From b6bb5d9182f89cd7c6f1eff3cd5a6d3f947b8b0c Mon Sep 17 00:00:00 2001
From: Sukadev Bhattiprolu <[email protected]>
Date: Thu, 3 Dec 2015 18:26:40 -0500
Subject: [PATCH 1/1] perf: Remove 'core_id' check in topo test

The topology test case of 'perf test' seems to be broken on my x86
system - due to the comparison of a "core-id" with # of CPUs online.

There are 8 online CPUs:

        $ cat /sys/devices/system/cpu/online
        0-7

but core-ids are not sequential and some core-ids exceed the number
of online CPUs.

        $ cat /sys/devices/system/cpu/cpu?/topology/core_id
        0
        1
        9
        10
        0
        1
        9
        10

Looks like we can safely remove the check.  Output before:

        $ ./perf --version
        perf version 4.4.rc1.g34258a

        $ ./perf test -v topo
        36: Test topology in session                                 :
        --- start ---
        test child forked, pid 5906
        templ file: /tmp/perf-test-vCwWG3
        core_id number is too big.You may need to upgrade the perf tool.
        test child interrupted
        ---- end ----
        Test topology in session: FAILED!

and after:

        ./perf test -v topo
        36: Test topology in session                                 :
        --- start ---
        test child forked, pid 6532
        templ file: /tmp/perf-test-y10wFJ
        CPU 0, core 0, socket 0
        CPU 1, core 1, socket 0
        CPU 2, core 9, socket 0
        CPU 3, core 10, socket 0
        CPU 4, core 0, socket 1
        CPU 5, core 1, socket 1
        CPU 6, core 9, socket 1
        CPU 7, core 10, socket 1
        test child finished with 0
        ---- end ----
        Test topology in session: Ok

Signed-off-by: Sukadev Bhattiprolu <[email protected]>
Cc: [email protected]
Cc: Jiri Olsa <[email protected]>
---
 tools/perf/util/header.c | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/tools/perf/util/header.c b/tools/perf/util/header.c
index 4383800..e74f94d 100644
--- a/tools/perf/util/header.c
+++ b/tools/perf/util/header.c
@@ -1652,11 +1652,6 @@ static int process_cpu_topology(struct perf_file_section 
*section,
                if (ph->needs_swap)
                        nr = bswap_32(nr);
 
-               if (nr > (u32)cpu_nr) {
-                       pr_debug("core_id number is too big."
-                                "You may need to upgrade the perf tool.\n");
-                       goto free_cpu;
-               }
                ph->env.cpu[i].core_id = nr;
 
                ret = readn(fd, &nr, sizeof(nr));
-- 
2.1.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to