1 # SPDX-License-Identifier: GPL-2.0
4 # Author: Michael Petlan <mpetlan@redhat.com>
8 # This file contains global settings for the whole testsuite.
9 # Its purpose is to make it easier when it is necessary i.e. to
10 # change the usual sample command which is used in all of the tests
13 # This file is intended to be sourced in the tests.
16 #### which perf to use in the testing
17 export CMD_PERF
=${CMD_PERF:-`which perf`}
19 #### basic programs examinated by perf
20 export CMD_BASIC_SLEEP
="sleep 0.1"
21 export CMD_QUICK_SLEEP
="sleep 0.01"
22 export CMD_LONGER_SLEEP
="sleep 2"
23 export CMD_DOUBLE_LONGER_SLEEP
="sleep 4"
24 export CMD_VERY_LONG_SLEEP
="sleep 30"
25 export CMD_SIMPLE
="true"
27 #### testsuite run mode
29 export RUNMODE_BASIC
=0
30 export RUNMODE_STANDARD
=1
31 export RUNMODE_EXPERIMENTAL
=2
32 # default runmode is STANDARD
33 export PERFTOOL_TESTSUITE_RUNMODE
=${PERFTOOL_TESTSUITE_RUNMODE:-$RUNMODE_STANDARD}
36 export TESTLOG_VERBOSITY
=${TESTLOG_VERBOSITY:-2}
37 export TESTLOG_FORCE_COLOR
=${TESTLOG_FORCE_COLOR:-n}
38 export TESTLOG_ERR_MSG_MAX_LINES
=${TESTLOG_ERR_MSG_MAX_LINES:-20}
39 export TESTLOG_CLEAN
=${TESTLOG_CLEAN:-y}
41 #### other environment-related settings
42 export TEST_IGNORE_MISSING_PMU
=${TEST_IGNORE_MISSING_PMU:-n}
48 if [ -t 1 ] ||
[ "$TESTLOG_FORCE_COLOR" = "yes" ]; then
50 export MALLPASS
="\e[1;32m"
52 export MALLFAIL
="\e[1;31m"
53 export MWARN
="\e[1;35m"
55 export MHIGH
="\e[1;33m"
69 DIR_PATH
=`dirname "$(readlink -e "$0")"`
71 TEST_NAME
=`basename $DIR_PATH | sed 's/base/perf/'`; export TEST_NAME
72 MY_ARCH
=`arch`; export MY_ARCH
74 # storing logs and temporary files variables
75 if [ -n "$PERFSUITE_RUN_DIR" ]; then
76 # when $PERFSUITE_RUN_DIR is set to something, all the logs and temp files will be placed there
77 # --> the $PERFSUITE_RUN_DIR/perf_something/examples and $PERFSUITE_RUN_DIR/perf_something/logs
78 # dirs will be used for that
79 PERFSUITE_RUN_DIR
=`readlink -f $PERFSUITE_RUN_DIR`; export PERFSUITE_RUN_DIR
80 export CURRENT_TEST_DIR
="$PERFSUITE_RUN_DIR/$TEST_NAME"
81 export MAKE_TARGET_DIR
="$CURRENT_TEST_DIR/examples"
82 export LOGS_DIR
="$CURRENT_TEST_DIR/logs"
83 export HEADER_TAR_DIR
="$CURRENT_TEST_DIR/header_tar"
84 test -d "$CURRENT_TEST_DIR" || mkdir
-p "$CURRENT_TEST_DIR"
85 test -d "$LOGS_DIR" || mkdir
-p "$LOGS_DIR"
87 # when $PERFSUITE_RUN_DIR is not set, logs will be placed here
88 export CURRENT_TEST_DIR
="."
90 export HEADER_TAR_DIR
="./header_tar"
94 #### test parametrization
95 if [ ! -d .
/common
]; then
96 # set parameters based on runmode
97 if [ -f ..
/common
/parametrization.
$PERFTOOL_TESTSUITE_RUNMODE.sh
]; then
98 # shellcheck source=/dev/null
99 . ..
/common
/parametrization.
$PERFTOOL_TESTSUITE_RUNMODE.sh
101 # if some parameters haven't been set until now, set them to default
102 if [ -f ..
/common
/parametrization.sh
]; then
103 . ..
/common
/parametrization.sh