1 #! /bin/bash 1 #! /bin/bash 2 # SPDX-License-Identifier: GPL-2.0 2 # SPDX-License-Identifier: GPL-2.0 3 3 4 set -e 4 set -e 5 set -u 5 set -u 6 set -x 6 set -x 7 7 8 unset KBUILD_OUTPUT 8 unset KBUILD_OUTPUT 9 9 10 GENERATE_GCOV_REPORT=0 10 GENERATE_GCOV_REPORT=0 11 while getopts "g" opt; do 11 while getopts "g" opt; do 12 case ${opt} in 12 case ${opt} in 13 g) 13 g) 14 GENERATE_GCOV_REPORT=1 14 GENERATE_GCOV_REPORT=1 15 ;; 15 ;; 16 :) 16 :) 17 echo "USAGE: config.sh [-g]" 17 echo "USAGE: config.sh [-g]" 18 exit 1 18 exit 1 19 ;; 19 ;; 20 ?) 20 ?) 21 echo "Invalid option: -${OPTARG}." 21 echo "Invalid option: -${OPTARG}." 22 exit 1 22 exit 1 23 ;; 23 ;; 24 esac 24 esac 25 done 25 done 26 26 27 CONF_FILE="tools/testing/selftests/net/config" 27 CONF_FILE="tools/testing/selftests/net/config" 28 28 29 # no modules 29 # no modules 30 scripts/config --file "$CONF_FILE" --disable C 30 scripts/config --file "$CONF_FILE" --disable CONFIG_MODULES 31 31 32 # enable RDS 32 # enable RDS 33 scripts/config --file "$CONF_FILE" --enable CO 33 scripts/config --file "$CONF_FILE" --enable CONFIG_RDS 34 scripts/config --file "$CONF_FILE" --enable CO 34 scripts/config --file "$CONF_FILE" --enable CONFIG_RDS_TCP 35 35 36 if [ "$GENERATE_GCOV_REPORT" -eq 1 ]; then 36 if [ "$GENERATE_GCOV_REPORT" -eq 1 ]; then 37 # instrument RDS and only RDS 37 # instrument RDS and only RDS 38 scripts/config --file "$CONF_FILE" --e 38 scripts/config --file "$CONF_FILE" --enable CONFIG_GCOV_KERNEL 39 scripts/config --file "$CONF_FILE" --d 39 scripts/config --file "$CONF_FILE" --disable GCOV_PROFILE_ALL 40 scripts/config --file "$CONF_FILE" --e 40 scripts/config --file "$CONF_FILE" --enable GCOV_PROFILE_RDS 41 else 41 else 42 scripts/config --file "$CONF_FILE" --d 42 scripts/config --file "$CONF_FILE" --disable CONFIG_GCOV_KERNEL 43 scripts/config --file "$CONF_FILE" --d 43 scripts/config --file "$CONF_FILE" --disable GCOV_PROFILE_ALL 44 scripts/config --file "$CONF_FILE" --d 44 scripts/config --file "$CONF_FILE" --disable GCOV_PROFILE_RDS 45 fi 45 fi 46 46 47 # need network namespaces to run tests with ve 47 # need network namespaces to run tests with veth network interfaces 48 scripts/config --file "$CONF_FILE" --enable CO 48 scripts/config --file "$CONF_FILE" --enable CONFIG_NET_NS 49 scripts/config --file "$CONF_FILE" --enable CO 49 scripts/config --file "$CONF_FILE" --enable CONFIG_VETH 50 50 51 # simulate packet loss 51 # simulate packet loss 52 scripts/config --file "$CONF_FILE" --enable CO 52 scripts/config --file "$CONF_FILE" --enable CONFIG_NET_SCH_NETEM 53 53
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.