~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/tools/testing/selftests/run_kselftest.sh

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /tools/testing/selftests/run_kselftest.sh (Version linux-6.12-rc7) and /tools/testing/selftests/run_kselftest.sh (Version linux-6.2.16)


  1 #!/bin/sh                                           1 #!/bin/sh
  2 # SPDX-License-Identifier: GPL-2.0                  2 # SPDX-License-Identifier: GPL-2.0
  3 #                                                   3 #
  4 # Run installed kselftest tests.                    4 # Run installed kselftest tests.
  5 #                                                   5 #
  6 BASE_DIR=$(realpath $(dirname $0))                  6 BASE_DIR=$(realpath $(dirname $0))
  7 cd $BASE_DIR                                        7 cd $BASE_DIR
  8 TESTS="$BASE_DIR"/kselftest-list.txt                8 TESTS="$BASE_DIR"/kselftest-list.txt
  9 if [ ! -r "$TESTS" ] ; then                         9 if [ ! -r "$TESTS" ] ; then
 10         echo "$0: Could not find list of tests     10         echo "$0: Could not find list of tests to run ($TESTS)" >&2
 11         available=""                               11         available=""
 12 else                                               12 else
 13         available="$(cat "$TESTS")"                13         available="$(cat "$TESTS")"
 14 fi                                                 14 fi
 15                                                    15 
 16 . ./kselftest/runner.sh                            16 . ./kselftest/runner.sh
 17 ROOT=$PWD                                          17 ROOT=$PWD
 18                                                    18 
 19 usage()                                            19 usage()
 20 {                                                  20 {
 21         cat <<EOF                                  21         cat <<EOF
 22 Usage: $0 [OPTIONS]                                22 Usage: $0 [OPTIONS]
 23   -s | --summary                Print summary  !!  23   -s | --summary                Print summary with detailed log in output.log
 24   -p | --per_test_log           Print test log << 
 25   -t | --test COLLECTION:TEST   Run TEST from      24   -t | --test COLLECTION:TEST   Run TEST from COLLECTION
 26   -c | --collection COLLECTION  Run all tests      25   -c | --collection COLLECTION  Run all tests from COLLECTION
 27   -l | --list                   List the avail     26   -l | --list                   List the available collection:test entries
 28   -d | --dry-run                Don't actually     27   -d | --dry-run                Don't actually run any tests
 29   -n | --netns                  Run each test  << 
 30   -h | --help                   Show this usag     28   -h | --help                   Show this usage info
 31   -o | --override-timeout       Number of seco << 
 32 EOF                                                29 EOF
 33         exit $1                                    30         exit $1
 34 }                                                  31 }
 35                                                    32 
 36 COLLECTIONS=""                                     33 COLLECTIONS=""
 37 TESTS=""                                           34 TESTS=""
 38 dryrun=""                                          35 dryrun=""
 39 kselftest_override_timeout=""                  << 
 40 while true; do                                     36 while true; do
 41         case "$1" in                               37         case "$1" in
 42                 -s | --summary)                    38                 -s | --summary)
 43                         logfile="$BASE_DIR"/ou     39                         logfile="$BASE_DIR"/output.log
 44                         cat /dev/null > $logfi     40                         cat /dev/null > $logfile
 45                         shift ;;                   41                         shift ;;
 46                 -p | --per-test-log)           << 
 47                         per_test_logging=1     << 
 48                         shift ;;               << 
 49                 -t | --test)                       42                 -t | --test)
 50                         TESTS="$TESTS $2"          43                         TESTS="$TESTS $2"
 51                         shift 2 ;;                 44                         shift 2 ;;
 52                 -c | --collection)                 45                 -c | --collection)
 53                         COLLECTIONS="$COLLECTI     46                         COLLECTIONS="$COLLECTIONS $2"
 54                         shift 2 ;;                 47                         shift 2 ;;
 55                 -l | --list)                       48                 -l | --list)
 56                         echo "$available"          49                         echo "$available"
 57                         exit 0 ;;                  50                         exit 0 ;;
 58                 -d | --dry-run)                    51                 -d | --dry-run)
 59                         dryrun="echo"              52                         dryrun="echo"
 60                         shift ;;                   53                         shift ;;
 61                 -n | --netns)                  << 
 62                         RUN_IN_NETNS=1         << 
 63                         shift ;;               << 
 64                 -o | --override-timeout)       << 
 65                         kselftest_override_tim << 
 66                         shift 2 ;;             << 
 67                 -h | --help)                       54                 -h | --help)
 68                         usage 0 ;;                 55                         usage 0 ;;
 69                 "")                                56                 "")
 70                         break ;;                   57                         break ;;
 71                 *)                                 58                 *)
 72                         usage 1 ;;                 59                         usage 1 ;;
 73         esac                                       60         esac
 74 done                                               61 done
 75                                                    62 
 76 # Add all selected collections to the explicit     63 # Add all selected collections to the explicit test list.
 77 if [ -n "$COLLECTIONS" ]; then                     64 if [ -n "$COLLECTIONS" ]; then
 78         for collection in $COLLECTIONS ; do        65         for collection in $COLLECTIONS ; do
 79                 found="$(echo "$available" | g     66                 found="$(echo "$available" | grep "^$collection:")"
 80                 if [ -z "$found" ] ; then          67                 if [ -z "$found" ] ; then
 81                         echo "No such collecti     68                         echo "No such collection '$collection'" >&2
 82                         exit 1                     69                         exit 1
 83                 fi                                 70                 fi
 84                 TESTS="$TESTS $found"              71                 TESTS="$TESTS $found"
 85         done                                       72         done
 86 fi                                                 73 fi
 87 # Replace available test list with explicitly      74 # Replace available test list with explicitly selected tests.
 88 if [ -n "$TESTS" ]; then                           75 if [ -n "$TESTS" ]; then
 89         valid=""                                   76         valid=""
 90         for test in $TESTS ; do                    77         for test in $TESTS ; do
 91                 found="$(echo "$available" | g     78                 found="$(echo "$available" | grep "^${test}$")"
 92                 if [ -z "$found" ] ; then          79                 if [ -z "$found" ] ; then
 93                         echo "No such test '$t     80                         echo "No such test '$test'" >&2
 94                         exit 1                     81                         exit 1
 95                 fi                                 82                 fi
 96                 valid="$valid $found"              83                 valid="$valid $found"
 97         done                                       84         done
 98         available="$(echo "$valid" | sed -e 's     85         available="$(echo "$valid" | sed -e 's/ /\n/g')"
 99 fi                                                 86 fi
100                                                    87 
101 collections=$(echo "$available" | cut -d: -f1  !!  88 collections=$(echo "$available" | cut -d: -f1 | uniq)
102 for collection in $collections ; do                89 for collection in $collections ; do
103         [ -w /dev/kmsg ] && echo "kselftest: R     90         [ -w /dev/kmsg ] && echo "kselftest: Running tests in $collection" >> /dev/kmsg
104         tests=$(echo "$available" | grep "^$co     91         tests=$(echo "$available" | grep "^$collection:" | cut -d: -f2)
105         ($dryrun cd "$collection" && $dryrun r     92         ($dryrun cd "$collection" && $dryrun run_many $tests)
106 done                                               93 done
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php