lkml.org 
[lkml]   [2022]   [Aug]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.19 0977/1157] perf test: Fix test case 83 (perf stat CSV output linter) on s390
    Date
    From: Thomas Richter <tmricht@linux.ibm.com>

    [ Upstream commit 87abe344cd280802f431998fabfd35d2d340ca90 ]

    Perf test case 83: perf stat CSV output linter might fail
    on s390.
    The reason for this is the output of the command

    ./perf stat -x, -A -a --no-merge true

    which depends on a .config file setting. When CONFIG_SCHED_TOPOLOGY
    is set, the output of above perf command is

    CPU0,1.50,msec,cpu-clock,1502781,100.00,1.052,CPUs utilized

    When CONFIG_SCHED_TOPOLOGY is *NOT* set the output of above perf
    command is

    0.95,msec,cpu-clock,949800,100.00,1.060,CPUs utilized

    Fix the test case to accept both output formats.

    Output before:
    # perf test 83
    83: perf stat CSV output linter : FAILED!
    #

    Output after:
    # ./perf test 83
    83: perf stat CSV output linter : Ok
    #

    Fixes: ec906102e5b7d339 ("perf test: Fix "perf stat CSV output linter" test on s390")
    Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
    Acked-by: Ian Rogers <irogers@google.com>
    Acked-by: Sumanth Korikkar <sumanthk@linux.ibm.com>
    Cc: Heiko Carstens <hca@linux.ibm.com>
    Cc: Sven Schnelle <svens@linux.ibm.com>
    Cc: Vasily Gorbik <gor@linux.ibm.com>
    Link: https://lore.kernel.org/r/20220720123419.220953-1-tmricht@linux.ibm.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    tools/perf/tests/shell/stat+csv_output.sh | 7 ++++---
    1 file changed, 4 insertions(+), 3 deletions(-)

    diff --git a/tools/perf/tests/shell/stat+csv_output.sh b/tools/perf/tests/shell/stat+csv_output.sh
    index 38c26f3ef4c1..eb5196f58190 100755
    --- a/tools/perf/tests/shell/stat+csv_output.sh
    +++ b/tools/perf/tests/shell/stat+csv_output.sh
    @@ -8,7 +8,8 @@ set -e

    function commachecker()
    {
    - local -i cnt=0 exp=0
    + local -i cnt=0
    + local exp=0

    case "$1"
    in "--no-args") exp=6
    @@ -17,7 +18,7 @@ function commachecker()
    ;; "--interval") exp=7
    ;; "--per-thread") exp=7
    ;; "--system-wide-no-aggr") exp=7
    - [ $(uname -m) = "s390x" ] && exp=6
    + [ $(uname -m) = "s390x" ] && exp='^[6-7]$'
    ;; "--per-core") exp=8
    ;; "--per-socket") exp=8
    ;; "--per-node") exp=8
    @@ -34,7 +35,7 @@ function commachecker()
    x=$(echo $line | tr -d -c ',')
    cnt="${#x}"
    # echo $line $cnt
    - [ "$cnt" -ne "$exp" ] && {
    + [[ ! "$cnt" =~ $exp ]] && {
    echo "wrong number of fields. expected $exp in $line" 1>&2
    exit 1;
    }
    --
    2.35.1


    \
     
     \ /
      Last update: 2022-08-16 06:53    [W:3.579 / U:0.072 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site