| From foo@baz Wed Aug 22 09:42:09 CEST 2018 |
| From: Thomas Richter <tmricht@linux.ibm.com> |
| Date: Mon, 11 Jun 2018 09:31:53 +0200 |
| Subject: perf test session topology: Fix test on s390 |
| |
| From: Thomas Richter <tmricht@linux.ibm.com> |
| |
| [ Upstream commit b930e62ecd362843002bdf84c2940439822af321 ] |
| |
| On s390 this test case fails because the socket identifiction numbers |
| assigned to the CPU are higher than the CPU identification numbers. |
| |
| F/ix this by adding the platform architecture into the perf data header |
| flag information. This helps identifiing the test platform and handles |
| s390 specifics in process_cpu_topology(). |
| |
| Before: |
| |
| [root@p23lp27 perf]# perf test -vvvvv -F 39 |
| 39: Session topology : |
| --- start --- |
| templ file: /tmp/perf-test-iUv755 |
| socket_id number is too big.You may need to upgrade the perf tool. |
| ---- end ---- |
| Session topology: Skip |
| [root@p23lp27 perf]# |
| |
| After: |
| |
| [root@p23lp27 perf]# perf test -vvvvv -F 39 |
| 39: Session topology : |
| --- start --- |
| templ file: /tmp/perf-test-8X8VTs |
| CPU 0, core 0, socket 6 |
| CPU 1, core 1, socket 3 |
| ---- end ---- |
| Session topology: Ok |
| [root@p23lp27 perf]# |
| |
| Signed-off-by: Thomas Richter <tmricht@linux.ibm.com> |
| Reviewed-by: Hendrik Brueckner <brueckner@linux.ibm.com> |
| Cc: Heiko Carstens <heiko.carstens@de.ibm.com> |
| Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> |
| Fixes: c84974ed9fb6 ("perf test: Add entry to test cpu topology") |
| Link: http://lkml.kernel.org/r/20180611073153.15592-2-tmricht@linux.ibm.com |
| Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| tools/perf/tests/topology.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| --- a/tools/perf/tests/topology.c |
| +++ b/tools/perf/tests/topology.c |
| @@ -42,6 +42,7 @@ static int session_write_header(char *pa |
| |
| perf_header__set_feat(&session->header, HEADER_CPU_TOPOLOGY); |
| perf_header__set_feat(&session->header, HEADER_NRCPUS); |
| + perf_header__set_feat(&session->header, HEADER_ARCH); |
| |
| session->header.data_size += DATA_SIZE; |
| |