From nobody Wed May 15 05:50:26 2024 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7ED271C696 for ; Mon, 26 Feb 2024 08:18:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935486; cv=none; b=c9wqQZh0zqhlGr24Z+4JiUFAJ6V2Fi4gF5Rp0J300Op+xnd5cCviPYi++379uAIAPWqHzYzZaxIPzX4alQLqiSD1/JfZVFGYffaewKBFfzIv//jDFNY6fQ/ymfGlRdmmyH2+1uIJEkuu+Hx9fgWiSr693mYOo1qRejWTJWhKxCk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935486; c=relaxed/simple; bh=A3q629OfMfZgv+UL+usHh+LKq2uhgG4x/mpHlKUfmog=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=QBW2MXHNkkWGcC1z2bTTs1jAoypRfzXUODVuzKptBMC8ORYj15/lUaszcmVqVQvqQuU8qlfPIGSdPGpgnwqz81CO0509S/hNwdaZR2fMUfgDQVPPnV+/LvtPiI+o6I3vXtDsx+IIUltJLTdQxut7XzhivXGgvuv+Tf+ifjzU1IE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Gc7c03v7; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Gc7c03v7" Received: by smtp.kernel.org (Postfix) with ESMTPSA id EC34EC43394; Mon, 26 Feb 2024 08:18:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708935486; bh=A3q629OfMfZgv+UL+usHh+LKq2uhgG4x/mpHlKUfmog=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Gc7c03v7pzb7ooNHe/e01+zNQzhpJHDVCsPSiZ8+URGVuB8CR9BxGdJ7pQNlyPc8Z 7y112iKqqrlB0ruqJZ5TjuqNoWOR+xMtA8hdTPoafpYFSfD8VTVKINe364gNSg/8Z2 uifbCf4MxqnBwSrZQPG0b9Yni0vgmR3bKxWVslBOLJcWgSqYaaUl3AXjrOrGjlZa2G 4YuCrrmzK22a/RLA23RFgEQms7mTsE5en0zFUFyJWjwBe8T4yW3liS2p7Pl6iAFdbX gnDFfeUNBH4iUhfY6eTUURnS+y1V+7E+JWayPNqs6JyPQGazBLmokKb1QTqiDqd7fG OHoTes9T1/bxw== From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v4 01/13] selftests: mptcp: capitalize ok/fail/skip Date: Mon, 26 Feb 2024 16:17:46 +0800 Message-Id: <52d42e66e9e5f1dd34220e38ca763ab41ba22f15.1708935196.git.tanggeliang@kylinos.cn> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geliang Tang Most scripts print uppercase [ OK ], [FAIL] and [SKIP] as test results, but lowercase ones are used in diag.sh, mptcp_join.sh and simult_flows.sh. To maintain consistency with other scripts, this patch capitalizes these lowercase [ ok ], [ fail ] and [ skip ]: [ ok ] -> [ OK ] in diag.sh, mptcp_join.sh [ fail ] -> [FAIL] in diag.sh, mptcp_join.sh, simult_flows.sh [ skip ] -> [SKIP] in diag.sh, mptcp_join.sh Signed-off-by: Geliang Tang --- tools/testing/selftests/net/mptcp/diag.sh | 12 ++++++------ .../testing/selftests/net/mptcp/mptcp_connect.sh | 16 ++++++++-------- tools/testing/selftests/net/mptcp/mptcp_join.sh | 6 +++--- tools/testing/selftests/net/mptcp/mptcp_lib.sh | 2 +- .../testing/selftests/net/mptcp/simult_flows.sh | 2 +- 5 files changed, 19 insertions(+), 19 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/diag.sh b/tools/testing/self= tests/net/mptcp/diag.sh index d8f080f934ac..aa3fb808fc6d 100755 --- a/tools/testing/selftests/net/mptcp/diag.sh +++ b/tools/testing/selftests/net/mptcp/diag.sh @@ -58,15 +58,15 @@ __chk_nr() printf "%-50s" "$msg" if [ "$nr" !=3D "$expected" ]; then if [ "$nr" =3D "$skip" ] && ! mptcp_lib_expect_all_features; then - echo "[ skip ] Feature probably not supported" + echo "[SKIP] Feature probably not supported" mptcp_lib_result_skip "${msg}" else - echo "[ fail ] expected $expected found $nr" + echo "[FAIL] expected $expected found $nr" mptcp_lib_result_fail "${msg}" ret=3D$test_cnt fi else - echo "[ ok ]" + echo "[ OK ]" mptcp_lib_result_pass "${msg}" fi test_cnt=3D$((test_cnt+1)) @@ -116,15 +116,15 @@ wait_msk_nr() =20 printf "%-50s" "$msg" if [ $i -ge $timeout ]; then - echo "[ fail ] timeout while expecting $expected max $max last $nr" + echo "[FAIL] timeout while expecting $expected max $max last $nr" mptcp_lib_result_fail "${msg} # timeout" ret=3D$test_cnt elif [ $nr !=3D $expected ]; then - echo "[ fail ] expected $expected found $nr" + echo "[FAIL] expected $expected found $nr" mptcp_lib_result_fail "${msg} # unexpected result" ret=3D$test_cnt else - echo "[ ok ]" + echo "[ OK ]" mptcp_lib_result_pass "${msg}" fi test_cnt=3D$((test_cnt+1)) diff --git a/tools/testing/selftests/net/mptcp/mptcp_connect.sh b/tools/tes= ting/selftests/net/mptcp/mptcp_connect.sh index 0ca2960c9099..ab3bb3b17522 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_connect.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_connect.sh @@ -254,7 +254,7 @@ check_mptcp_disabled() =20 # net.mptcp.enabled should be enabled by default if [ "$(ip netns exec ${disabled_ns} sysctl net.mptcp.enabled | awk '{ pr= int $3 }')" -ne 1 ]; then - echo -e "net.mptcp.enabled sysctl is not 1 by default\t\t[ FAIL ]" + echo -e "net.mptcp.enabled sysctl is not 1 by default\t\t[FAIL]" mptcp_lib_result_fail "net.mptcp.enabled sysctl is not 1 by default" ret=3D1 return 1 @@ -267,7 +267,7 @@ check_mptcp_disabled() mptcp_lib_ns_exit "${disabled_ns}" =20 if [ ${err} -eq 0 ]; then - echo -e "New MPTCP socket cannot be blocked via sysctl\t\t[ FAIL ]" + echo -e "New MPTCP socket cannot be blocked via sysctl\t\t[FAIL]" mptcp_lib_result_fail "New MPTCP socket cannot be blocked via sysctl" ret=3D1 return 1 @@ -294,7 +294,7 @@ do_ping() ip netns exec ${connector_ns} ping ${ping_args} $connect_addr >/dev/null = || rc=3D1 =20 if [ $rc -ne 0 ] ; then - echo "$listener_ns -> $connect_addr connectivity [ FAIL ]" 1>&2 + echo "$listener_ns -> $connect_addr connectivity [FAIL]" 1>&2 ret=3D1 =20 return 1 @@ -427,7 +427,7 @@ do_transfer() result_msg+=3D" # time=3D${duration}ms" printf "(duration %05sms) " "${duration}" if [ ${rets} -ne 0 ] || [ ${retc} -ne 0 ]; then - echo "[ FAIL ] client exit code $retc, server $rets" 1>&2 + echo "[FAIL] client exit code $retc, server $rets" 1>&2 echo -e "\nnetns ${listener_ns} socket stat for ${port}:" 1>&2 ip netns exec ${listener_ns} ss -Menita 1>&2 -o "sport =3D :$port" cat /tmp/${listener_ns}.out @@ -469,13 +469,13 @@ do_transfer() fi =20 if [ ${stat_synrx_now_l} -lt ${expect_synrx} ]; then - printf "[ FAIL ] lower MPC SYN rx (%d) than expected (%d)\n" \ + printf "[FAIL] lower MPC SYN rx (%d) than expected (%d)\n" \ "${stat_synrx_now_l}" "${expect_synrx}" 1>&2 retc=3D1 fi if [ ${stat_ackrx_now_l} -lt ${expect_ackrx} ] && [ ${stat_ooo_now} -eq 0= ]; then if [ ${stat_ooo_now} -eq 0 ]; then - printf "[ FAIL ] lower MPC ACK rx (%d) than expected (%d)\n" \ + printf "[FAIL] lower MPC ACK rx (%d) than expected (%d)\n" \ "${stat_ackrx_now_l}" "${expect_ackrx}" 1>&2 rets=3D1 else @@ -491,13 +491,13 @@ do_transfer() =20 local csum_err_s_nr=3D$((csum_err_s - stat_csum_err_s)) if [ $csum_err_s_nr -gt 0 ]; then - printf "[ FAIL ]\nserver got %d data checksum error[s]" ${csum_err_s_nr} + printf "[FAIL]\nserver got %d data checksum error[s]" ${csum_err_s_nr} rets=3D1 fi =20 local csum_err_c_nr=3D$((csum_err_c - stat_csum_err_c)) if [ $csum_err_c_nr -gt 0 ]; then - printf "[ FAIL ]\nclient got %d data checksum error[s]" ${csum_err_c_nr} + printf "[FAIL]\nclient got %d data checksum error[s]" ${csum_err_c_nr} retc=3D1 fi fi diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testin= g/selftests/net/mptcp/mptcp_join.sh index 1df2d24979a0..8e8977031fa0 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -190,17 +190,17 @@ print_info() =20 print_ok() { - mptcp_lib_print_ok "[ ok ]${1:+ ${*}}" + mptcp_lib_print_ok "[ OK ]${1:+ ${*}}" } =20 print_fail() { - mptcp_lib_print_err "[fail]${1:+ ${*}}" + mptcp_lib_print_err "[FAIL]${1:+ ${*}}" } =20 print_skip() { - mptcp_lib_print_warn "[skip]${1:+ ${*}}" + mptcp_lib_print_warn "[SKIP]${1:+ ${*}}" } =20 # [ $1: fail msg ] diff --git a/tools/testing/selftests/net/mptcp/mptcp_lib.sh b/tools/testing= /selftests/net/mptcp/mptcp_lib.sh index 763a2989ca6d..7e309493eda2 100644 --- a/tools/testing/selftests/net/mptcp/mptcp_lib.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_lib.sh @@ -292,7 +292,7 @@ mptcp_lib_check_transfer() { local what=3D"${3}" =20 if ! cmp "$in" "$out" > /dev/null 2>&1; then - echo "[ FAIL ] $what does not match (in, out):" + echo "[FAIL] $what does not match (in, out):" mptcp_lib_print_file_err "$in" mptcp_lib_print_file_err "$out" =20 diff --git a/tools/testing/selftests/net/mptcp/simult_flows.sh b/tools/test= ing/selftests/net/mptcp/simult_flows.sh index 467feb17e07b..58cfdaf1db25 100755 --- a/tools/testing/selftests/net/mptcp/simult_flows.sh +++ b/tools/testing/selftests/net/mptcp/simult_flows.sh @@ -192,7 +192,7 @@ do_transfer() return 0 fi =20 - echo " [ fail ]" + echo " [FAIL]" echo "client exit code $retc, server $rets" 1>&2 echo -e "\nnetns ${ns3} socket stat for $port:" 1>&2 ip netns exec ${ns3} ss -nita 1>&2 -o "sport =3D :$port" --=20 2.40.1 From nobody Wed May 15 05:50:26 2024 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2B0701C696 for ; Mon, 26 Feb 2024 08:18:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935488; cv=none; b=kBUhunwOW8ZW6eVgHKagYoVIWQlZfoCuuRS5qI2Kvt0M7iwV2sJrrAzVIICAJc60BuM2lYMZprJ5y51TgJ5QH7AXzvmzBdMW1ZM8q8PfHsSXzdUCDr0BCnFSlQ0Y7nT8DNgXpJL7dJlvO8D/wKBfuZVDndyl1NBytz3i2VBJV3c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935488; c=relaxed/simple; bh=LTtlVZgYotInA94KDfW/ER+WgCskEZLdprctLQWWxEo=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=MujbKqIh22P+MkLY0To3xJi976vYOQrJ9s7AW5Vzd1NyIb6DgXGi4Ui4sVVrrXUgaD30inpOe+EuYtw9uIuDL9/aep1FZH/vz/mPWlVeKA7+ZAFWOfGGrbrZKmXikzRZ/zxQlqgBAVE3GIQdKyVMep9PiDoeCzpOsoBfPxA4kfw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=rGoWivMQ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="rGoWivMQ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9677DC433F1; Mon, 26 Feb 2024 08:18:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708935487; bh=LTtlVZgYotInA94KDfW/ER+WgCskEZLdprctLQWWxEo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=rGoWivMQfbgQw5a3SB33UCvlNqo9wMXGqaKK4Ie3k3LSAXyca63GRJh4IzjiX6nXp xx+bsro8tozY8GfKv6BGA3UeReOL5si5y9xCVKy5feJ1qUZIhBkutxusAc70QXNfdk q5K5OjmhDDGvUoKoJKbfFaTLKqlQRKJrzZP4RJB5KpOn8yxRjJq9yVRlvdLLDhlM6P qSa3HHeyjTnT2HATJjPwHF5L/M/fwaED95ne3q3dqE8ICGkGUiQ8JzqsK2benzn8G5 R0AFM3gQZh6GQIgxdg1jQj4DkRi2ZLlEgtcltLFXYnViLXDNwdJsmtR7v9J1Ki3p3i 9lUInJHzQ8oKA== From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v4 02/13] selftests: mptcp: sockopt: print every test result Date: Mon, 26 Feb 2024 16:17:47 +0800 Message-Id: <1aa6a9af7ebd8690e595bfbbdde5f54f684f51e8.1708935196.git.tanggeliang@kylinos.cn> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geliang Tang Only total test results are printed out in mptcp_sockopt.sh: PASS: all packets had packet mark set PASS: SOL_MPTCP getsockopt has expected information PASS: TCP_INQ cmsg/ioctl -t tcp PASS: TCP_INQ cmsg/ioctl -6 -t tcp PASS: TCP_INQ cmsg/ioctl -r tcp PASS: TCP_INQ cmsg/ioctl -6 -r tcp This patch prints more info for every test result in each test group: transfer ipv4 [ OK ] mark ipv4 [ OK ] transfer ipv6 [ OK ] mark ipv6 [ OK ] PASS: all packets had packet mark set sockopt v4 [ OK ] sockopt v6 [ OK ] PASS: SOL_MPTCP getsockopt has expected information TCP_INQ: -t tcp [ OK ] PASS: TCP_INQ cmsg/ioctl -t tcp TCP_INQ: -6 -t tcp [ OK ] PASS: TCP_INQ cmsg/ioctl -6 -t tcp TCP_INQ: -r tcp [ OK ] PASS: TCP_INQ cmsg/ioctl -r tcp TCP_INQ: -6 -r tcp [ OK ] PASS: TCP_INQ cmsg/ioctl -6 -r tcp TCP_INQ: -r tcp -t tcp [ OK ] Signed-off-by: Geliang Tang --- tools/testing/selftests/net/mptcp/mptcp_sockopt.sh | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh b/tools/tes= ting/selftests/net/mptcp/mptcp_sockopt.sh index 6ed4aa32222f..f84185b5dc9f 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh @@ -161,6 +161,7 @@ do_transfer() wait $spid local rets=3D$? =20 + printf "%-50s" "transfer ${ip}" if [ ${rets} -ne 0 ] || [ ${retc} -ne 0 ]; then echo " client exit code $retc, server $rets" 1>&2 echo -e "\nnetns ${listener_ns} socket stat for ${port}:" 1>&2 @@ -169,12 +170,15 @@ do_transfer() echo -e "\nnetns ${connector_ns} socket stat for ${port}:" 1>&2 ip netns exec ${connector_ns} ss -Menita 1>&2 -o "dport =3D :$port" =20 + mptcp_lib_print_err "[FAIL]" mptcp_lib_result_fail "transfer ${ip}" =20 ret=3D1 return 1 fi + mptcp_lib_print_ok "[ OK ]" =20 + printf "%-50s" "mark ${ip}" if [ $local_addr =3D "::" ];then check_mark $listener_ns 6 || retc=3D1 check_mark $connector_ns 6 || retc=3D1 @@ -190,8 +194,10 @@ do_transfer() mptcp_lib_result_code "${rets}" "transfer ${ip}" =20 if [ $retc -eq 0 ] && [ $rets -eq 0 ];then + mptcp_lib_print_ok "[ OK ]" return 0 fi + mptcp_lib_print_err "[FAIL]" =20 return 1 } @@ -220,23 +226,27 @@ do_mptcp_sockopt_tests() ip netns exec "$ns_sbox" ./mptcp_sockopt lret=3D$? =20 + printf "%-50s" "sockopt v4" if [ $lret -ne 0 ]; then echo "FAIL: SOL_MPTCP getsockopt" 1>&2 mptcp_lib_result_fail "sockopt v4" ret=3D$lret return fi + mptcp_lib_print_ok "[ OK ]" mptcp_lib_result_pass "sockopt v4" =20 ip netns exec "$ns_sbox" ./mptcp_sockopt -6 lret=3D$? =20 + printf "%-50s" "sockopt v6" if [ $lret -ne 0 ]; then echo "FAIL: SOL_MPTCP getsockopt (ipv6)" 1>&2 mptcp_lib_result_fail "sockopt v6" ret=3D$lret return fi + mptcp_lib_print_ok "[ OK ]" mptcp_lib_result_pass "sockopt v6" } =20 @@ -259,6 +269,7 @@ run_tests() =20 do_tcpinq_test() { + printf "%-50s" "TCP_INQ: $*" ip netns exec "$ns_sbox" ./mptcp_inq "$@" local lret=3D$? if [ $lret -ne 0 ];then @@ -267,6 +278,7 @@ do_tcpinq_test() mptcp_lib_result_fail "TCP_INQ: $*" return $lret fi + mptcp_lib_print_ok "[ OK ]" =20 echo "PASS: TCP_INQ cmsg/ioctl $*" mptcp_lib_result_pass "TCP_INQ: $*" --=20 2.40.1 From nobody Wed May 15 05:50:26 2024 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 25AF41C696 for ; Mon, 26 Feb 2024 08:18:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935490; cv=none; b=f8BT5hyf2Qvf5zoCO4/YoPNSjhcW9zitv8+Bz3IG5mQxFWckEYXNUQH3dkh1xppAkmndPyUSZJu0H2pCrjl92WnP6Tfks5EKjMsDIw1Exb2eKEKKnYjYGRTOGoP9BVJBGZp9whgdE5ouJWQjHZPjninOpIFRGgUD6HFie2XGkm4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935490; c=relaxed/simple; bh=AsYKZHM4Vkh2vInRTD66a/lR6QtG8JnarTaSy0Wg31I=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=h0ereBcYeWRi58kU8P6t4LQtA3e8bZILxSHO8TOXUHQWyiuFyx0/xPO0ii8Y/TR0cZHK+suyrZ99dqABHgXpf7ckJJwLp9vrH7WuR9EQgGTWSXvbeqWCXbv9z/6Uy/JHHVNjLUwEjzYK+M6BPneAiSmYo6ucBfBuMnWstpRWq5M= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=d2tNkdZL; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="d2tNkdZL" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6D356C43390; Mon, 26 Feb 2024 08:18:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708935489; bh=AsYKZHM4Vkh2vInRTD66a/lR6QtG8JnarTaSy0Wg31I=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=d2tNkdZLxWQLLOGoDo0GURG0hXBrJq+jsvI42DxeiJd2kyQi0T2WriXP0twavBf9O aZBHbupwkSNrQ5hHFrw0ytier/80yBHDczX/hiSwSQR9eSrt/ef0gMAaTjKbfLJaz7 o0GqdB4AuDPXIEJMKQeWh1Xf5FP4vWSvgUtoT0EKEX29VSTSvnDDaxtI9id2SsgxMz 5GG0EQbIiSqRbDR7Hr9KRJuvPazFCNa3SGly4JpUFZi9gYyMnrGlQj/fDh3hAK/Yo2 h74ZK6Ns5+xtJrJEU4fsHDayUvf7LnpJWSAd8TXb8dD2BktOhIYggmjHQQ/2je+KIs rY5L4R39pemHw== From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v4 03/13] selftests: mptcp: connect: fix misaligned OK/FAIL Date: Mon, 26 Feb 2024 16:17:48 +0800 Message-Id: <57d3e04f51798ad454f1f028cd9a59a5066f0a96.1708935196.git.tanggeliang@kylinos.cn> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geliang Tang The first [ OK ] and [FAIL] in the output of mptcp_connect.sh misalign with the others: New MPTCP socket can be blocked via sysctl [ OK ] INFO: validating network environment with pings INFO: Using loss of 0.85% delay 16 ms reorder 95% 70% with delay 4ms on ns1 MPTCP -> ns1 (10.0.1.1:10000 ) MPTCP (duration 184ms) [ OK ] ns1 MPTCP -> ns1 (10.0.1.1:10001 ) TCP (duration 50ms) [ OK ] ns1 TCP -> ns1 (10.0.1.1:10002 ) MPTCP (duration 55ms) [ OK ] This patch fixes them. Signed-off-by: Geliang Tang --- tools/testing/selftests/net/mptcp/mptcp_connect.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/mptcp_connect.sh b/tools/tes= ting/selftests/net/mptcp/mptcp_connect.sh index ab3bb3b17522..72be905bab1f 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_connect.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_connect.sh @@ -254,7 +254,7 @@ check_mptcp_disabled() =20 # net.mptcp.enabled should be enabled by default if [ "$(ip netns exec ${disabled_ns} sysctl net.mptcp.enabled | awk '{ pr= int $3 }')" -ne 1 ]; then - echo -e "net.mptcp.enabled sysctl is not 1 by default\t\t[FAIL]" + echo -e "net.mptcp.enabled sysctl is not 1 by default\t\t\t [FAIL]" mptcp_lib_result_fail "net.mptcp.enabled sysctl is not 1 by default" ret=3D1 return 1 @@ -267,13 +267,13 @@ check_mptcp_disabled() mptcp_lib_ns_exit "${disabled_ns}" =20 if [ ${err} -eq 0 ]; then - echo -e "New MPTCP socket cannot be blocked via sysctl\t\t[FAIL]" + echo -e "New MPTCP socket cannot be blocked via sysctl\t\t\t [FAIL]" mptcp_lib_result_fail "New MPTCP socket cannot be blocked via sysctl" ret=3D1 return 1 fi =20 - echo -e "New MPTCP socket can be blocked via sysctl\t\t[ OK ]" + echo -e "New MPTCP socket can be blocked via sysctl\t\t\t [ OK ]" mptcp_lib_result_pass "New MPTCP socket can be blocked via sysctl" return 0 } --=20 2.40.1 From nobody Wed May 15 05:50:26 2024 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B798D1BC3E for ; Mon, 26 Feb 2024 08:18:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935491; cv=none; b=EfJuqBrhSjysSzjEYN8g+KMzxoSoJkucMCa2+eGWeewter6M6D9kpxlP04lXLAsbYNa6KgOnJbFwtKBrTwz2VoFzlxhkv1zkIhxRfQhnw3aQgD9XtsWeglbdRLhK0g7fGzh0uuzoa4+If8d9pqtWxr3eG8+BDnsnSNuWZBcxn/I= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935491; c=relaxed/simple; bh=T4MmkKHM/NoFIeBDbfWyu70AGnNA1CXbMKM4l72JipA=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=a7f4CX4nxhZdqRyPgqAKoh2Q/Dcqt20r7M5yCyFmUUQcaaXW4m1Gxq4B/6bqy2INMPK3UOEVP1jhpHmeYHk1mRUOABt3tVabMdMXunL4piv6ryEE+xlvfgMAd4oQRrEGwt99SjO5/T31W79bS6HJ7Q+hY60pK8pAZieBnHVCd8A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=IBq7NZs1; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="IBq7NZs1" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2F59CC433C7; Mon, 26 Feb 2024 08:18:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708935491; bh=T4MmkKHM/NoFIeBDbfWyu70AGnNA1CXbMKM4l72JipA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=IBq7NZs16fDG4DOdr3p7b/HEgT6WocbL2CMx2cK1riatl5fLDpCWiDNFHkVggIsTb xzXsde8MfifLh+MSp3O48kTnEukwQGX+ruSD5oedsBr8+sRscln3j+kT//sDh40knU ULD3jziV0S0JWTmHrViJglmEYtcSF9Hdy9bniML80aLIFm5L3olTp93EBA7GQJUsN7 MSNtrYic3BfllLSFEegHRFPOxbEQ+XLdllNiNpc6KbWTT9+AJXXrus7gOJ+YqmWqu8 NjmCQOp57RAxvmQL00VCCa9ScUOlTgtk1sjeXpEykUvjq6VdI9cxNUCJLXe7gWAwuw mV4j90owcKdAw== From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v4 04/13] selftests: mptcp: print test results with colors Date: Mon, 26 Feb 2024 16:17:49 +0800 Message-Id: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geliang Tang The helper mptcp_lib_verify_listener_events() will be added latter in mptcp_lib.sh, and be used by mptcp_join.sh and userspace_pm.sh. The former prints colored output while the latter is not. It makes sense to unify them. This patch uses mptcp_lib_print_ok(), _warn(), _err() and _info() helpers in scripts diag.sh, mptcp_connect.sh, mptcp_sockopt.sh, pm_netlink.sh, simult_flows.sh and userspace_pm.sh to print test results with colors. Having colors helps to quickly identify issues when looking at a long list of output logs and results. Signed-off-by: Geliang Tang --- tools/testing/selftests/net/mptcp/diag.sh | 12 ++++---- .../selftests/net/mptcp/mptcp_connect.sh | 28 ++++++++++--------- .../selftests/net/mptcp/mptcp_sockopt.sh | 16 +++++------ .../testing/selftests/net/mptcp/pm_netlink.sh | 3 +- .../selftests/net/mptcp/simult_flows.sh | 4 +-- .../selftests/net/mptcp/userspace_pm.sh | 13 +++------ 6 files changed, 37 insertions(+), 39 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/diag.sh b/tools/testing/self= tests/net/mptcp/diag.sh index aa3fb808fc6d..f9f62a8f41e3 100755 --- a/tools/testing/selftests/net/mptcp/diag.sh +++ b/tools/testing/selftests/net/mptcp/diag.sh @@ -58,15 +58,15 @@ __chk_nr() printf "%-50s" "$msg" if [ "$nr" !=3D "$expected" ]; then if [ "$nr" =3D "$skip" ] && ! mptcp_lib_expect_all_features; then - echo "[SKIP] Feature probably not supported" + mptcp_lib_print_warn "[SKIP] Feature probably not supported" mptcp_lib_result_skip "${msg}" else - echo "[FAIL] expected $expected found $nr" + mptcp_lib_print_err "[FAIL] expected $expected found $nr" mptcp_lib_result_fail "${msg}" ret=3D$test_cnt fi else - echo "[ OK ]" + mptcp_lib_print_ok "[ OK ]" mptcp_lib_result_pass "${msg}" fi test_cnt=3D$((test_cnt+1)) @@ -116,15 +116,15 @@ wait_msk_nr() =20 printf "%-50s" "$msg" if [ $i -ge $timeout ]; then - echo "[FAIL] timeout while expecting $expected max $max last $nr" + mptcp_lib_print_err "[FAIL] timeout while expecting $expected max $max l= ast $nr" mptcp_lib_result_fail "${msg} # timeout" ret=3D$test_cnt elif [ $nr !=3D $expected ]; then - echo "[FAIL] expected $expected found $nr" + mptcp_lib_print_err "[FAIL] expected $expected found $nr" mptcp_lib_result_fail "${msg} # unexpected result" ret=3D$test_cnt else - echo "[ OK ]" + mptcp_lib_print_ok "[ OK ]" mptcp_lib_result_pass "${msg}" fi test_cnt=3D$((test_cnt+1)) diff --git a/tools/testing/selftests/net/mptcp/mptcp_connect.sh b/tools/tes= ting/selftests/net/mptcp/mptcp_connect.sh index 72be905bab1f..c7483902026b 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_connect.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_connect.sh @@ -254,7 +254,8 @@ check_mptcp_disabled() =20 # net.mptcp.enabled should be enabled by default if [ "$(ip netns exec ${disabled_ns} sysctl net.mptcp.enabled | awk '{ pr= int $3 }')" -ne 1 ]; then - echo -e "net.mptcp.enabled sysctl is not 1 by default\t\t\t [FAIL]" + echo -n -e "net.mptcp.enabled sysctl is not 1 by default" + mptcp_lib_print_err "\t\t\t [FAIL]" mptcp_lib_result_fail "net.mptcp.enabled sysctl is not 1 by default" ret=3D1 return 1 @@ -267,13 +268,15 @@ check_mptcp_disabled() mptcp_lib_ns_exit "${disabled_ns}" =20 if [ ${err} -eq 0 ]; then - echo -e "New MPTCP socket cannot be blocked via sysctl\t\t\t [FAIL]" + echo -n -e "New MPTCP socket cannot be blocked via sysctl" + mptcp_lib_print_err "\t\t\t [FAIL]" mptcp_lib_result_fail "New MPTCP socket cannot be blocked via sysctl" ret=3D1 return 1 fi =20 - echo -e "New MPTCP socket can be blocked via sysctl\t\t\t [ OK ]" + echo -n -e "New MPTCP socket can be blocked via sysctl" + mptcp_lib_print_ok "\t\t\t [ OK ]" mptcp_lib_result_pass "New MPTCP socket can be blocked via sysctl" return 0 } @@ -503,7 +506,7 @@ do_transfer() fi =20 if [ $retc -eq 0 ] && [ $rets -eq 0 ]; then - printf "[ OK ]" + mptcp_lib_print_ok "[ OK ]" mptcp_lib_result_pass "${TEST_GROUP}: ${result_msg}" else mptcp_lib_result_fail "${TEST_GROUP}: ${result_msg}" @@ -534,7 +537,6 @@ do_transfer() "${expect_ackrx}" "${stat_ackrx_now_l}" fi =20 - echo cat "$capout" [ $retc -eq 0 ] && [ $rets -eq 0 ] } @@ -708,7 +710,7 @@ EOF return fi =20 - echo "INFO: test $msg" + mptcp_lib_print_info "INFO: test $msg" =20 TEST_COUNT=3D10000 local extra_args=3D"-o TRANSPARENT" @@ -721,12 +723,12 @@ EOF ip -net "$listener_ns" route del local $local_addr/0 dev lo table 100 =20 if [ $lret -ne 0 ]; then - echo "FAIL: $msg, mptcp connection error" 1>&2 + mptcp_lib_print_err "FAIL: $msg, mptcp connection error" 1>&2 ret=3D$lret return 1 fi =20 - echo "PASS: $msg" + mptcp_lib_print_ok "PASS: $msg" return 0 } =20 @@ -735,7 +737,7 @@ run_tests_peekmode() local peekmode=3D"$1" =20 TEST_GROUP=3D"peek mode: ${peekmode}" - echo "INFO: with peek mode: ${peekmode}" + mptcp_lib_print_info "INFO: with peek mode: ${peekmode}" run_tests_lo "$ns1" "$ns1" 10.0.1.1 1 "-P ${peekmode}" run_tests_lo "$ns1" "$ns1" dead:beef:1::1 1 "-P ${peekmode}" } @@ -750,7 +752,7 @@ run_tests_mptfo() return fi =20 - echo "INFO: with MPTFO start" + mptcp_lib_print_info "INFO: with MPTFO start" ip netns exec "$ns1" sysctl -q net.ipv4.tcp_fastopen=3D2 ip netns exec "$ns2" sysctl -q net.ipv4.tcp_fastopen=3D1 =20 @@ -762,7 +764,7 @@ run_tests_mptfo() =20 ip netns exec "$ns1" sysctl -q net.ipv4.tcp_fastopen=3D0 ip netns exec "$ns2" sysctl -q net.ipv4.tcp_fastopen=3D0 - echo "INFO: with MPTFO end" + mptcp_lib_print_info "INFO: with MPTFO end" } =20 run_tests_disconnect() @@ -786,7 +788,7 @@ run_tests_disconnect() cin_disconnect=3D"$old_cin" connect_per_transfer=3D3 =20 - echo "INFO: disconnect" + mptcp_lib_print_info "INFO: disconnect" run_tests_lo "$ns1" "$ns1" 10.0.1.1 1 "-I 3 -i $old_cin" run_tests_lo "$ns1" "$ns1" dead:beef:1::1 1 "-I 3 -i $old_cin" =20 @@ -835,7 +837,7 @@ check_mptcp_disabled =20 stop_if_error "The kernel configuration is not valid for MPTCP" =20 -echo "INFO: validating network environment with pings" +mptcp_lib_print_info "INFO: validating network environment with pings" for sender in "$ns1" "$ns2" "$ns3" "$ns4";do do_ping "$ns1" $sender 10.0.1.1 do_ping "$ns1" $sender dead:beef:1::1 diff --git a/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh b/tools/tes= ting/selftests/net/mptcp/mptcp_sockopt.sh index f84185b5dc9f..cfa0cfb918f4 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh @@ -218,7 +218,7 @@ do_mptcp_sockopt_tests() local lret=3D0 =20 if ! mptcp_lib_kallsyms_has "mptcp_diag_fill_info$"; then - echo "INFO: MPTCP sockopt not supported: SKIP" + mptcp_lib_print_warn "INFO: MPTCP sockopt not supported: SKIP" mptcp_lib_result_skip "sockopt" return fi @@ -228,7 +228,7 @@ do_mptcp_sockopt_tests() =20 printf "%-50s" "sockopt v4" if [ $lret -ne 0 ]; then - echo "FAIL: SOL_MPTCP getsockopt" 1>&2 + mptcp_lib_print_err "FAIL: SOL_MPTCP getsockopt" mptcp_lib_result_fail "sockopt v4" ret=3D$lret return @@ -241,7 +241,7 @@ do_mptcp_sockopt_tests() =20 printf "%-50s" "sockopt v6" if [ $lret -ne 0 ]; then - echo "FAIL: SOL_MPTCP getsockopt (ipv6)" 1>&2 + mptcp_lib_print_err "FAIL: SOL_MPTCP getsockopt (ipv6)" mptcp_lib_result_fail "sockopt v6" ret=3D$lret return @@ -274,13 +274,13 @@ do_tcpinq_test() local lret=3D$? if [ $lret -ne 0 ];then ret=3D$lret - echo "FAIL: mptcp_inq $*" 1>&2 + mptcp_lib_print_err "FAIL: mptcp_inq $*" 1>&2 mptcp_lib_result_fail "TCP_INQ: $*" return $lret fi mptcp_lib_print_ok "[ OK ]" =20 - echo "PASS: TCP_INQ cmsg/ioctl $*" + mptcp_lib_print_info "PASS: TCP_INQ cmsg/ioctl $*" mptcp_lib_result_pass "TCP_INQ: $*" return $lret } @@ -290,7 +290,7 @@ do_tcpinq_tests() local lret=3D0 =20 if ! mptcp_lib_kallsyms_has "mptcp_ioctl$"; then - echo "INFO: TCP_INQ not supported: SKIP" + mptcp_lib_print_warn "INFO: TCP_INQ not supported: SKIP" mptcp_lib_result_skip "TCP_INQ" return fi @@ -327,12 +327,12 @@ run_tests $ns1 $ns2 10.0.1.1 run_tests $ns1 $ns2 dead:beef:1::1 =20 if [ $ret -eq 0 ];then - echo "PASS: all packets had packet mark set" + mptcp_lib_print_info "PASS: all packets had packet mark set" fi =20 do_mptcp_sockopt_tests if [ $ret -eq 0 ];then - echo "PASS: SOL_MPTCP getsockopt has expected information" + mptcp_lib_print_info "PASS: SOL_MPTCP getsockopt has expected information" fi =20 do_tcpinq_tests diff --git a/tools/testing/selftests/net/mptcp/pm_netlink.sh b/tools/testin= g/selftests/net/mptcp/pm_netlink.sh index 427fc5c70b3c..68fad278ac59 100755 --- a/tools/testing/selftests/net/mptcp/pm_netlink.sh +++ b/tools/testing/selftests/net/mptcp/pm_netlink.sh @@ -189,7 +189,8 @@ subflow,backup,fullmesh 10.0.1.1" " (backup,fu= llmesh)" else for st in fullmesh nofullmesh backup,fullmesh; do st=3D" (${st})" - printf "%-50s%s\n" "${st}" "[SKIP]" + printf "%-50s" "${st}" + mptcp_lib_print_warn "[SKIP]" mptcp_lib_result_skip "${st}" done fi diff --git a/tools/testing/selftests/net/mptcp/simult_flows.sh b/tools/test= ing/selftests/net/mptcp/simult_flows.sh index 58cfdaf1db25..79cb377ee0bd 100755 --- a/tools/testing/selftests/net/mptcp/simult_flows.sh +++ b/tools/testing/selftests/net/mptcp/simult_flows.sh @@ -187,12 +187,12 @@ do_transfer() printf "%-16s" " max $max_time " if [ $retc -eq 0 ] && [ $rets -eq 0 ] && \ [ $cmpc -eq 0 ] && [ $cmps -eq 0 ]; then - echo "[ OK ]" + mptcp_lib_print_ok "[ OK ]" cat "$capout" return 0 fi =20 - echo " [FAIL]" + mptcp_lib_print_err " [FAIL]" echo "client exit code $retc, server $rets" 1>&2 echo -e "\nnetns ${ns3} socket stat for $port:" 1>&2 ip netns exec ${ns3} ss -nita 1>&2 -o "sport =3D :$port" diff --git a/tools/testing/selftests/net/mptcp/userspace_pm.sh b/tools/test= ing/selftests/net/mptcp/userspace_pm.sh index b0cce8f065d8..33bbb0d5807f 100755 --- a/tools/testing/selftests/net/mptcp/userspace_pm.sh +++ b/tools/testing/selftests/net/mptcp/userspace_pm.sh @@ -61,7 +61,7 @@ _printf() { =20 print_title() { - _printf "INFO: %s\n" "${1}" + mptcp_lib_print_info "INFO: ${1}" } =20 # $1: test name @@ -72,27 +72,22 @@ print_test() _printf "%-68s" "${test_name}" } =20 -print_results() -{ - _printf "[%s]\n" "${1}" -} - test_pass() { - print_results " OK " + mptcp_lib_print_ok "[ OK ]" mptcp_lib_result_pass "${test_name}" } =20 test_skip() { - print_results "SKIP" + mptcp_lib_print_warn "[SKIP]" mptcp_lib_result_skip "${test_name}" } =20 # $1: msg test_fail() { - print_results "FAIL" + mptcp_lib_print_err "[FAIL]${1:+ ${*}}" ret=3D1 =20 if [ -n "${1}" ]; then --=20 2.40.1 From nobody Wed May 15 05:50:26 2024 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 852F71BC3E for ; Mon, 26 Feb 2024 08:18:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935493; cv=none; b=fIHpIxSMW+Wk0yCW4+bUjEMLRr737ieqHiT65qWCF5O//yPbWmL4xdep5oJSP2eNvIjvCCL4GHUqxMw856GJi9tR56/6sETljThebXZ/p7Vqm7sJx9LNLkuv+9tfUOyavPpw5az1pNfx8uCW9yo48xWQ8b3JHxjBay6j0CBOU4M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935493; c=relaxed/simple; bh=bFzDe6XLpSP5eoyrm0uiE68aAhpO/U+AbiYwDW/HntQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=MuOtriGU65nvLbTTi+NxrWHQrO1XKMUfEu/B8oONZ+QEPXmu6I8Q3KoZiyyPa3hyQarw2ceENRI2L+OhblWnmuvGicewJNbQO9IOl9Foinv/dUycqG1L4K8H30WT+TD74gtEBfw8jIjSS1jPXq7Fm1qr8+77M9rryHHknW71c50= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ttBJoQI4; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ttBJoQI4" Received: by smtp.kernel.org (Postfix) with ESMTPSA id E37B4C43390; Mon, 26 Feb 2024 08:18:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708935493; bh=bFzDe6XLpSP5eoyrm0uiE68aAhpO/U+AbiYwDW/HntQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ttBJoQI4LRa4CJmb9KgCaJ+p42Cg50AqUNC369ubH/o37Gi/vbXtsYTF5gHQUUljQ 9UX0vV7Fp4jPJj7TFte21/7d2f7C3TKuK4FakHrfy3I86a7JZPxWpOtSpsghpkn4WI EjpM24br3zNtK5kE69pBl0ki4364tH2ZHHmZXN9i545xIM2AIyLsfptlbNER0n+zQH XH1JZ1/XQTJheVg818jOnwFkZ7pVkJ2SnnUNl02JIlZcg/9OxolZJdqhsSolrr6+EJ sBpnuAc515Tt3yDh87mH9eKWzpCM33PRz1T6ZgS1fJBQR90ON7ty5FeVL/6fvVm5sC Go/8fnUzEcs5A== From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v4 05/13] selftests: mptcp: connect: add dedicated port counter Date: Mon, 26 Feb 2024 16:17:50 +0800 Message-Id: <932e4723bdbe01f37eb0f65e04f01a40ec7dd780.1708935196.git.tanggeliang@kylinos.cn> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geliang Tang This patch adds a new dedicated counter 'PORT' instead of TEST_COUNT to increase port numbers in mptcp_connect.sh. This can avoid outputting discontinuous test counters. Signed-off-by: Geliang Tang --- tools/testing/selftests/net/mptcp/mptcp_connect.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/mptcp_connect.sh b/tools/tes= ting/selftests/net/mptcp/mptcp_connect.sh index c7483902026b..68073b255983 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_connect.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_connect.sh @@ -33,6 +33,7 @@ do_tcp=3D0 checksum=3Dfalse filesize=3D0 connect_per_transfer=3D1 +PORT=3D0 =20 if [ $tc_loss -eq 100 ];then tc_loss=3D1% @@ -317,7 +318,7 @@ do_transfer() local extra_args=3D"$7" =20 local port - port=3D$((10000+TEST_COUNT)) + port=3D$((10000+PORT++)) TEST_COUNT=3D$((TEST_COUNT+1)) =20 if [ "$rcvbuf" -gt 0 ]; then @@ -712,7 +713,7 @@ EOF =20 mptcp_lib_print_info "INFO: test $msg" =20 - TEST_COUNT=3D10000 + PORT=3D10000 local extra_args=3D"-o TRANSPARENT" do_transfer ${listener_ns} ${connector_ns} MPTCP MPTCP \ ${connect_addr} ${local_addr} "${extra_args}" --=20 2.40.1 From nobody Wed May 15 05:50:26 2024 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 64F8D1C6A0 for ; Mon, 26 Feb 2024 08:18:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935495; cv=none; b=WdP+BTPgE1tekUCNk0qPHQWPExde6muzknhm0XzGPw+rYdgDY7kg0as96ay1CXzVMdQ1lAT8bqTzJoYPOViQALnQCPp5wtCm4fzuCeDqZGS8MmMU2bWLxAx6E3ZsiXXujYf0laZiAW18D1Ujuy0jEmi8Wwie06Ub0N6PO8k1sVk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935495; c=relaxed/simple; bh=YCRuwPv2m6CeZPP+NG6N29G4rt/80odeq0ZRthN18Do=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=Xtnx+UEAB7uFhCfqUx8SKLGEhzN4i7gFb6Z93JtnkhQ2gbHPLen+iRCffMfUWlOEU8y2BcXZliSSXbUrOWDl9XWj52151BvV/tifX+cefcNgGw/eW/woVuXz5RbhARx+MUnz/BKhgrPGqNKRtZn55u3P9vcH0UTh4xxPxQXRgEY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=FVqmQUeL; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="FVqmQUeL" Received: by smtp.kernel.org (Postfix) with ESMTPSA id C2A3FC433C7; Mon, 26 Feb 2024 08:18:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708935495; bh=YCRuwPv2m6CeZPP+NG6N29G4rt/80odeq0ZRthN18Do=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=FVqmQUeLSVfxoh9ubumEZH9qluCXKPmczxMZarM1qctZz/Kk7e72B2sw6nP/hEKIA jxpOvkB3fssmvPc2fztzRV4jgQfgskZAhg0nFwodvD8ppiJrHkgvXFK2jxWLL+Qjop tMunnlWp8/uGtWwqZNANls3YnbV8CTHe1Bc041+a4yMfAx5S/36IugyQAt4YjyApP2 C5cBr0Rr7388//+BPvRFwTXaLboUsy++eF2UV8eTwPZfValFKEtPg0nna0mT/IVhS+ 3YEnYLK75beTnhO72pbZU4ezuYjOjRuYCxEtbSeOA0omR3ufHj2TdJaL1ni2xOa7Dh mqDb+Ok4PTU0A== From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v4 06/13] selftests: mptcp: connect: print out ping tests info Date: Mon, 26 Feb 2024 16:17:51 +0800 Message-Id: <77c1b641cefdf9832b96759e2544e41330161a7c.1708935196.git.tanggeliang@kylinos.cn> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geliang Tang 'ping tests' shows in the test results of mptcp_connect.sh: 1..68 ok 1 - mptcp_connect: New MPTCP socket can be blocked via sysctl ok 2 - mptcp_connect: ping tests ok 3 - mptcp_connect: loopback v4: ns1 MPTCP -> ns1 (10.0.1.1:10000) MPTCP ok 4 - mptcp_connect: loopback v4: ns1 MPTCP -> ns1 (10.0.1.1:10001) TCP But not in the test output of this script: New MPTCP socket can be blocked via sysctl [ OK ] INFO: validating network environment with pings INFO: Using loss of 0.01% delay 30 ms reorder 94% 9% with delay 7ms on ns1 MPTCP -> ns1 (10.0.1.1:10000 ) MPTCP (duration 79ms) [ OK ] ns1 MPTCP -> ns1 (10.0.1.1:10001 ) TCP (duration 49ms) [ OK ] This patch fixes this by adding ping tests in test output. Signed-off-by: Geliang Tang --- tools/testing/selftests/net/mptcp/mptcp_connect.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tools/testing/selftests/net/mptcp/mptcp_connect.sh b/tools/tes= ting/selftests/net/mptcp/mptcp_connect.sh index 68073b255983..06e945914ace 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_connect.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_connect.sh @@ -861,6 +861,9 @@ mptcp_lib_result_code "${ret}" "ping tests" =20 stop_if_error "Could not even run ping tests" =20 +echo -e "ping tests" +mptcp_lib_print_ok "\t\t\t\t\t\t\t\t [ OK ]" + [ -n "$tc_loss" ] && tc -net "$ns2" qdisc add dev ns2eth3 root netem loss = random $tc_loss delay ${tc_delay}ms echo -n "INFO: Using loss of $tc_loss " test "$tc_delay" -gt 0 && echo -n "delay $tc_delay ms " --=20 2.40.1 From nobody Wed May 15 05:50:26 2024 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 383711C696 for ; Mon, 26 Feb 2024 08:18:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935497; cv=none; b=JTF2dD7YxEOzOSP+v8i9GS/T+Fcg7AlDA09jIUyDIEGqKToLuEHepsyX179ak1hQz4Uyyr6S2oNUn82bUkSwlC5hahtfHAfrIzhVnJMAiXaLFJAbumuq1OGz9yrDdiktPt8GSU9Cezwyouzj84+dUDL9kVCgXNYH3Fl/7Yc/PzQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935497; c=relaxed/simple; bh=p2XInzCPm8ijm0ExDUVT4NzKzxvFhHym8yw81fgTaV8=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=i/d84muVpRzx6CP+iQCdKOnKGR/BTqUl8XFwVsOTPi17FT65qTMRLOOIEA04/hKaZPA+2lHc9LtKWOe42nqyZv6ogJ5XhzcMHLu1/XANXCIwInsCLUq/d3RCC9bvegtRKUXcRes2jgfljLyHx148z3DdO9jyazqx5Hn1e2+mo4Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=TvvNgRg+; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="TvvNgRg+" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 97687C433F1; Mon, 26 Feb 2024 08:18:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708935496; bh=p2XInzCPm8ijm0ExDUVT4NzKzxvFhHym8yw81fgTaV8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=TvvNgRg+eCs+wl6wrJIvw5GIThOKRqaHp7qpFMXdWiVH6vFV59Is4FJyW61NdJwK8 AP6m77q/UHCggElKjxeTho1DWOPz7pjNXOTCU3q/FdRYuXGceiVZe6dFKteg3pooUG keYHgwSq4C2HmaY598ZZLKGhBHaG3rEp4p3H8qmfvIhQVZIFilcCwA4JFvCMXBCIHa DvE4s6gdZHH37aaTT//D45SMa3nP6oWq2UCylxaH6dhlCSph3KsONX9KnlVZyrs0fM JcUA+FAr1Papy0R71YmOT5cY6wHuDK5mjeDOBVu3VtfCYpru/3CrEUKGr2gUOy5vzm ElrPcO6yBUC7w== From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v4 07/13] selftests: mptcp: add mptcp_lib_print_test_counter Date: Mon, 26 Feb 2024 16:17:52 +0800 Message-Id: <456f56cc925a7d20c5bf502ff1940be9117f356a.1708935196.git.tanggeliang@kylinos.cn> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geliang Tang This patch adds a new helper mptcp_lib_print_test_counter() to print out test counter in each test result and increase the counter. The counter digits of most tests are 2, only mptcp_join.sh is 3. Signed-off-by: Geliang Tang --- tools/testing/selftests/net/mptcp/mptcp_join.sh | 5 ++--- tools/testing/selftests/net/mptcp/mptcp_lib.sh | 9 +++++++++ 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testin= g/selftests/net/mptcp/mptcp_join.sh index 8e8977031fa0..0d45578f7858 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -48,6 +48,7 @@ declare -A all_tests declare -a only_tests_ids declare -a only_tests_names declare -A failed_tests +#shellcheck disable=3DSC2034 TEST_COUNT=3D0 TEST_NAME=3D"" nr_blank=3D6 @@ -172,7 +173,7 @@ cleanup() =20 print_title() { - printf "%03u %s\n" "${TEST_COUNT}" "${TEST_NAME}" + mptcp_lib_print_test_counter TEST_COUNT "%s\n" "${TEST_NAME}" 3 } =20 print_check() @@ -268,8 +269,6 @@ reset() =20 TEST_NAME=3D"${1}" =20 - TEST_COUNT=3D$((TEST_COUNT+1)) - if skip_test; then last_test_ignored=3D1 return 1 diff --git a/tools/testing/selftests/net/mptcp/mptcp_lib.sh b/tools/testing= /selftests/net/mptcp/mptcp_lib.sh index 7e309493eda2..482e88f5b7bf 100644 --- a/tools/testing/selftests/net/mptcp/mptcp_lib.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_lib.sh @@ -411,3 +411,12 @@ mptcp_lib_events() { ip netns exec "${ns}" ./pm_nl_ctl events >> "${evts}" 2>&1 & pid=3D$! } + +mptcp_lib_print_test_counter() { + declare -n counter=3D"${1}" + local fmt=3D"${2}" + local msg=3D"${3}" + local digit=3D"${4-2}" + + printf "%0${digit}u ${fmt}" "$((++counter))" "${msg}" +} --=20 2.40.1 From nobody Wed May 15 05:50:26 2024 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4CD7C1C696 for ; Mon, 26 Feb 2024 08:18:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935499; cv=none; b=HKUg3njaeq7zmaNA8B7zCt8xnQVlmPcRZlX9STOHHEi2BOM3KLymBL7RiExOx5fncthpQfgCmhpYnPJ74MutNbtRgK90FcqCTe2Yf8sTY+4NcHhzZRBUOZ0ciJQqFEqVcILw7V3NRYRxk1jbzvlrCU9fd9iHrsBUbZ6eUb3XF64= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935499; c=relaxed/simple; bh=ZdAIM85Fu6A/QiJIxMpkNa8xf2QO/P96XEx2KeEpPLI=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=hHMOQxk1MDtvycmZTMObksEKtZHTOAB2J/Vu3x+Qi3q3zxN/UvHWfW/YuNLjnVg+dlTwqFUGZHXf6ZCv3z/5O+0UQS4x0QnzLbj9MuYaWuTR31seVYlxkL3fw9HsnXaOTNY/GVuZsZEyyM8WLKXFfYDSdBCICpyDKRrIKftUVWw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=RNT/d6tb; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="RNT/d6tb" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 57540C433C7; Mon, 26 Feb 2024 08:18:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708935498; bh=ZdAIM85Fu6A/QiJIxMpkNa8xf2QO/P96XEx2KeEpPLI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=RNT/d6tbzmtshxkAZyk2zLig7bxblAPFRJSCJv9BBHunM5sGHhkusvRwnZKUlXebj Qkiqqy0QmnXJM4TvzR+v6fHFxraL+DHx4oa96ee8YA/ApPxT0LtD+cGvlgqIkfYckh SeNIaN4HOVszzBw2FatWpEKxkIRwWsr5MkVPLuiVYoVrV1MTSwivXyxwBVszdeCRef c//ghDhEWt9Syak/9FLcACb0pL8M07/86vIH7KidEQzd5lV+eSkJLealLQ3RAIHbi5 4qPWZwX/+QWOHhmFSEmvT4pRvzsuGGlDUThlY2PO6QQqJdtPANoJbTXAj8IsNyYq5u P58sxfa7ZgQNQ== From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v4 08/13] selftests: mptcp: print test results with counters Date: Mon, 26 Feb 2024 16:17:53 +0800 Message-Id: <674a884d9d721a8f971c5310467fe0cc0eb34816.1708935196.git.tanggeliang@kylinos.cn> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geliang Tang This patch prints out test counters for every tests in diag.sh, mptcp_connect.sh, mptcp_sockopt.sh, pm_netlink.sh, simult_flows.sh, and userspace_pm.sh. Each output looks like: diag.sh 01 no msk on netns creation [ OK ] 02 listen match for dport 10000 [ OK ] 03 listen match for sport 10000 [ OK ] 04 listen match for saddr and sport [ OK ] 05 all listen sockets [ OK ] mptcp_connect.sh 01 New MPTCP socket can be blocked via sysctl [ OK ] INFO: validating network environment with pings 02 ping tests [ OK ] INFO: Using loss of 0.16% delay 25 ms reorder .. with delay 6ms on ns3eth4 03 ns1 MPTCP -> ns1 (10.0.1.1:10000 ) MPTCP (duration 116ms) [ OK ] 04 ns1 MPTCP -> ns1 (10.0.1.1:10001 ) TCP (duration 33ms) [ OK ] 05 ns1 TCP -> ns1 (10.0.1.1:10002 ) MPTCP (duration 25ms) [ OK ] 06 ns1 MPTCP -> ns1 (dead:beef:1::1:10003) MPTCP (duration 128ms) [ OK ] 07 ns1 MPTCP -> ns1 (dead:beef:1::1:10004) TCP (duration 31ms) [ OK ] mptcp_sockopt.sh 01 transfer ipv4 [ OK ] 02 mark ipv4 [ OK ] 03 transfer ipv6 [ OK ] 04 mark ipv6 [ OK ] PASS: all packets had packet mark set 05 sockopt v4 [ OK ] 06 sockopt v6 [ OK ] PASS: SOL_MPTCP getsockopt has expected information 07 TCP_INQ: -t tcp [ OK ] PASS: TCP_INQ cmsg/ioctl -t tcp 08 TCP_INQ: -6 -t tcp [ OK ] PASS: TCP_INQ cmsg/ioctl -6 -t tcp 09 TCP_INQ: -r tcp [ OK ] PASS: TCP_INQ cmsg/ioctl -r tcp 10 TCP_INQ: -6 -r tcp [ OK ] pm_netlink.sh 01 defaults addr list [ OK ] 02 simple add/get addr [ OK ] 03 dump addrs [ OK ] 04 simple del addr [ OK ] 05 dump addrs after del [ OK ] 06 duplicate addr [ OK ] 07 id addr increment [ OK ] 08 hard addr limit [ OK ] 09 above hard addr limit [ OK ] simult_flows.sh 01 balanced bwidth 7411 max 8456 [ OK ] 02 balanced bwidth - reverse direction 7380 max 8456 [ OK ] 03 balanced bwidth with unbalanced delay 7434 max 8456 [ OK ] userspace_pm.sh INFO: Init 01 Created network namespaces ns1, ns2 [ OK ] INFO: Make connections 02 Established IPv4 MPTCP Connection ns2 =3D> ns1 [ OK ] 03 Established IPv6 MPTCP Connection ns2 =3D> ns1 [ OK ] INFO: Announce tests 04 ADD_ADDR 10.0.2.2 (ns2) =3D> ns1, invalid token [ OK ] 05 ADD_ADDR id:14 10.0.2.2 (ns2) =3D> ns1, reuse port [ OK ] Having test counters helps to quickly identify issues when looking at a long list of output logs and results. Signed-off-by: Geliang Tang --- tools/testing/selftests/net/mptcp/diag.sh | 8 ++--- .../selftests/net/mptcp/mptcp_connect.sh | 33 +++++++++++-------- .../selftests/net/mptcp/mptcp_sockopt.sh | 12 ++++--- .../testing/selftests/net/mptcp/pm_netlink.sh | 6 ++-- .../selftests/net/mptcp/simult_flows.sh | 7 ++-- .../selftests/net/mptcp/userspace_pm.sh | 3 +- 6 files changed, 39 insertions(+), 30 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/diag.sh b/tools/testing/self= tests/net/mptcp/diag.sh index f9f62a8f41e3..01e9f11f1f47 100755 --- a/tools/testing/selftests/net/mptcp/diag.sh +++ b/tools/testing/selftests/net/mptcp/diag.sh @@ -9,7 +9,7 @@ . "$(dirname "${0}")/mptcp_lib.sh" =20 ns=3D"" -test_cnt=3D1 +test_cnt=3D0 timeout_poll=3D30 timeout_test=3D$((timeout_poll * 2 + 1)) ret=3D0 @@ -55,7 +55,7 @@ __chk_nr() =20 nr=3D$(eval $command) =20 - printf "%-50s" "$msg" + mptcp_lib_print_test_counter test_cnt "%-50s" "$msg" if [ "$nr" !=3D "$expected" ]; then if [ "$nr" =3D "$skip" ] && ! mptcp_lib_expect_all_features; then mptcp_lib_print_warn "[SKIP] Feature probably not supported" @@ -69,7 +69,6 @@ __chk_nr() mptcp_lib_print_ok "[ OK ]" mptcp_lib_result_pass "${msg}" fi - test_cnt=3D$((test_cnt+1)) } =20 __chk_msk_nr() @@ -114,7 +113,7 @@ wait_msk_nr() sleep 1 done =20 - printf "%-50s" "$msg" + mptcp_lib_print_test_counter test_cnt "%-50s" "$msg" if [ $i -ge $timeout ]; then mptcp_lib_print_err "[FAIL] timeout while expecting $expected max $max l= ast $nr" mptcp_lib_result_fail "${msg} # timeout" @@ -127,7 +126,6 @@ wait_msk_nr() mptcp_lib_print_ok "[ OK ]" mptcp_lib_result_pass "${msg}" fi - test_cnt=3D$((test_cnt+1)) } =20 chk_msk_fallback_nr() diff --git a/tools/testing/selftests/net/mptcp/mptcp_connect.sh b/tools/tes= ting/selftests/net/mptcp/mptcp_connect.sh index 06e945914ace..00bbe451e50d 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_connect.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_connect.sh @@ -131,6 +131,7 @@ ns2=3D"" ns3=3D"" ns4=3D"" =20 +#shellcheck disable=3DSC2034 TEST_COUNT=3D0 TEST_GROUP=3D"" =20 @@ -255,8 +256,9 @@ check_mptcp_disabled() =20 # net.mptcp.enabled should be enabled by default if [ "$(ip netns exec ${disabled_ns} sysctl net.mptcp.enabled | awk '{ pr= int $3 }')" -ne 1 ]; then - echo -n -e "net.mptcp.enabled sysctl is not 1 by default" - mptcp_lib_print_err "\t\t\t [FAIL]" + mptcp_lib_print_test_counter TEST_COUNT "%s" \ + "net.mptcp.enabled sysctl is not 1 by default" + mptcp_lib_print_err "\t\t\t\t [FAIL]" mptcp_lib_result_fail "net.mptcp.enabled sysctl is not 1 by default" ret=3D1 return 1 @@ -269,15 +271,17 @@ check_mptcp_disabled() mptcp_lib_ns_exit "${disabled_ns}" =20 if [ ${err} -eq 0 ]; then - echo -n -e "New MPTCP socket cannot be blocked via sysctl" - mptcp_lib_print_err "\t\t\t [FAIL]" + mptcp_lib_print_test_counter TEST_COUNT "%s" \ + "New MPTCP socket cannot be blocked via sysctl" + mptcp_lib_print_err "\t\t\t\t [FAIL]" mptcp_lib_result_fail "New MPTCP socket cannot be blocked via sysctl" ret=3D1 return 1 fi =20 - echo -n -e "New MPTCP socket can be blocked via sysctl" - mptcp_lib_print_ok "\t\t\t [ OK ]" + mptcp_lib_print_test_counter TEST_COUNT "%s" \ + "New MPTCP socket can be blocked via sysctl" + mptcp_lib_print_ok "\t\t\t\t [ OK ]" mptcp_lib_result_pass "New MPTCP socket can be blocked via sysctl" return 0 } @@ -319,7 +323,6 @@ do_transfer() =20 local port port=3D$((10000+PORT++)) - TEST_COUNT=3D$((TEST_COUNT+1)) =20 if [ "$rcvbuf" -gt 0 ]; then extra_args=3D"$extra_args -R $rcvbuf" @@ -346,7 +349,7 @@ do_transfer() addr_port=3D$(printf "%s:%d" ${connect_addr} ${port}) local result_msg result_msg=3D"$(printf "%.3s %-5s -> %.3s (%-20s) %-5s" ${connector_ns} $= {cl_proto} ${listener_ns} ${addr_port} ${srv_proto})" - printf "%s\t" "${result_msg}" + mptcp_lib_print_test_counter TEST_COUNT "%s\t" "${result_msg}" =20 if $capture; then local capuser @@ -663,7 +666,8 @@ run_test_transparent() # following function has been exported (T). Not great but better than # checking for a specific kernel version. if ! mptcp_lib_kallsyms_has "T __ip_sock_set_tos$"; then - echo "INFO: ${msg} not supported by the kernel: SKIP" + mptcp_lib_print_test_counter TEST_COUNT "%s\n" \ + "INFO: ${msg} not supported by the kernel: SKIP" mptcp_lib_result_skip "${TEST_GROUP}" return fi @@ -680,7 +684,8 @@ table inet mangle { } EOF then - echo "SKIP: $msg, could not load nft ruleset" + mptcp_lib_print_test_counter TEST_COUNT "%s\n" \ + "SKIP: $msg, could not load nft ruleset" mptcp_lib_fail_if_expected_feature "nft rules" mptcp_lib_result_skip "${TEST_GROUP}" return @@ -696,7 +701,8 @@ EOF =20 if ! ip -net "$listener_ns" $r6flag rule add fwmark 1 lookup 100; then ip netns exec "$listener_ns" nft flush ruleset - echo "SKIP: $msg, ip $r6flag rule failed" + mptcp_lib_print_test_counter TEST_COUNT "%s\n" \ + "SKIP: $msg, ip $r6flag rule failed" mptcp_lib_fail_if_expected_feature "ip rule" mptcp_lib_result_skip "${TEST_GROUP}" return @@ -705,7 +711,8 @@ EOF if ! ip -net "$listener_ns" route add local $local_addr/0 dev lo table 10= 0; then ip netns exec "$listener_ns" nft flush ruleset ip -net "$listener_ns" $r6flag rule del fwmark 1 lookup 100 - echo "SKIP: $msg, ip route add local $local_addr failed" + mptcp_lib_print_test_counter TEST_COUNT "%s\n" \ + "SKIP: $msg, ip route add local $local_addr failed" mptcp_lib_fail_if_expected_feature "ip route" mptcp_lib_result_skip "${TEST_GROUP}" return @@ -861,7 +868,7 @@ mptcp_lib_result_code "${ret}" "ping tests" =20 stop_if_error "Could not even run ping tests" =20 -echo -e "ping tests" +mptcp_lib_print_test_counter TEST_COUNT "%s" "ping tests" mptcp_lib_print_ok "\t\t\t\t\t\t\t\t [ OK ]" =20 [ -n "$tc_loss" ] && tc -net "$ns2" qdisc add dev ns2eth3 root netem loss = random $tc_loss delay ${tc_delay}ms diff --git a/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh b/tools/tes= ting/selftests/net/mptcp/mptcp_sockopt.sh index cfa0cfb918f4..a2a5049f22bb 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh @@ -17,6 +17,8 @@ timeout_poll=3D30 timeout_test=3D$((timeout_poll * 2 + 1)) iptables=3D"iptables" ip6tables=3D"ip6tables" +#shellcheck disable=3DSC2034 +test_cnt=3D0 =20 ns1=3D"" ns2=3D"" @@ -161,7 +163,7 @@ do_transfer() wait $spid local rets=3D$? =20 - printf "%-50s" "transfer ${ip}" + mptcp_lib_print_test_counter test_cnt "%-50s" "transfer ${ip}" if [ ${rets} -ne 0 ] || [ ${retc} -ne 0 ]; then echo " client exit code $retc, server $rets" 1>&2 echo -e "\nnetns ${listener_ns} socket stat for ${port}:" 1>&2 @@ -178,7 +180,7 @@ do_transfer() fi mptcp_lib_print_ok "[ OK ]" =20 - printf "%-50s" "mark ${ip}" + mptcp_lib_print_test_counter test_cnt "%-50s" "mark ${ip}" if [ $local_addr =3D "::" ];then check_mark $listener_ns 6 || retc=3D1 check_mark $connector_ns 6 || retc=3D1 @@ -226,7 +228,7 @@ do_mptcp_sockopt_tests() ip netns exec "$ns_sbox" ./mptcp_sockopt lret=3D$? =20 - printf "%-50s" "sockopt v4" + mptcp_lib_print_test_counter test_cnt "%-50s" "sockopt v4" if [ $lret -ne 0 ]; then mptcp_lib_print_err "FAIL: SOL_MPTCP getsockopt" mptcp_lib_result_fail "sockopt v4" @@ -239,7 +241,7 @@ do_mptcp_sockopt_tests() ip netns exec "$ns_sbox" ./mptcp_sockopt -6 lret=3D$? =20 - printf "%-50s" "sockopt v6" + mptcp_lib_print_test_counter test_cnt "%-50s" "sockopt v6" if [ $lret -ne 0 ]; then mptcp_lib_print_err "FAIL: SOL_MPTCP getsockopt (ipv6)" mptcp_lib_result_fail "sockopt v6" @@ -269,7 +271,7 @@ run_tests() =20 do_tcpinq_test() { - printf "%-50s" "TCP_INQ: $*" + mptcp_lib_print_test_counter test_cnt "%-50s" "TCP_INQ: $*" ip netns exec "$ns_sbox" ./mptcp_inq "$@" local lret=3D$? if [ $lret -ne 0 ];then diff --git a/tools/testing/selftests/net/mptcp/pm_netlink.sh b/tools/testin= g/selftests/net/mptcp/pm_netlink.sh index 68fad278ac59..87ed60ed4112 100755 --- a/tools/testing/selftests/net/mptcp/pm_netlink.sh +++ b/tools/testing/selftests/net/mptcp/pm_netlink.sh @@ -9,6 +9,8 @@ . "$(dirname "${0}")/mptcp_lib.sh" =20 ret=3D0 +#shellcheck disable=3DSC2034 +test_cnt=3D0 =20 usage() { echo "Usage: $0 [ -h ]" @@ -53,7 +55,7 @@ check() local msg=3D"$3" local rc=3D0 =20 - printf "%-50s" "$msg" + mptcp_lib_print_test_counter test_cnt "%-50s" "$msg" mptcp_lib_check_output "${err}" "${cmd}" "${expected}" || rc=3D${?} if [ ${rc} -eq 2 ]; then mptcp_lib_result_fail "${msg} # error ${rc}" @@ -189,7 +191,7 @@ subflow,backup,fullmesh 10.0.1.1" " (backup,fu= llmesh)" else for st in fullmesh nofullmesh backup,fullmesh; do st=3D" (${st})" - printf "%-50s" "${st}" + mptcp_lib_print_test_counter test_cnt "%-50s" "${st}" mptcp_lib_print_warn "[SKIP]" mptcp_lib_result_skip "${st}" done diff --git a/tools/testing/selftests/net/mptcp/simult_flows.sh b/tools/test= ing/selftests/net/mptcp/simult_flows.sh index 79cb377ee0bd..eb2eaa48035f 100755 --- a/tools/testing/selftests/net/mptcp/simult_flows.sh +++ b/tools/testing/selftests/net/mptcp/simult_flows.sh @@ -14,7 +14,7 @@ ns3=3D"" capture=3Dfalse timeout_poll=3D30 timeout_test=3D$((timeout_poll * 2 + 1)) -test_cnt=3D1 +test_cnt=3D0 ret=3D0 bail=3D0 slack=3D50 @@ -127,7 +127,6 @@ do_transfer() local max_time=3D$3 local port port=3D$((10000+test_cnt)) - test_cnt=3D$((test_cnt+1)) =20 :> "$cout" :> "$sout" @@ -239,7 +238,7 @@ run_test() # completion (see mptcp_connect): 200ms on each side, add some slack time=3D$((time + 400 + slack)) =20 - printf "%-60s" "$msg" + mptcp_lib_print_test_counter test_cnt "%-60s" "$msg" do_transfer $small $large $time lret=3D$? mptcp_lib_result_code "${lret}" "${msg}" @@ -249,7 +248,7 @@ run_test() fi =20 msg+=3D" - reverse direction" - printf "%-60s" "${msg}" + mptcp_lib_print_test_counter test_cnt "%-60s" "${msg}" do_transfer $large $small $time lret=3D$? mptcp_lib_result_code "${lret}" "${msg}" diff --git a/tools/testing/selftests/net/mptcp/userspace_pm.sh b/tools/test= ing/selftests/net/mptcp/userspace_pm.sh index 33bbb0d5807f..27f308601005 100755 --- a/tools/testing/selftests/net/mptcp/userspace_pm.sh +++ b/tools/testing/selftests/net/mptcp/userspace_pm.sh @@ -53,6 +53,7 @@ server_addr_id=3D${RANDOM:0:2} ns1=3D"" ns2=3D"" ret=3D0 +test_cnt=3D0 test_name=3D"" =20 _printf() { @@ -69,7 +70,7 @@ print_test() { test_name=3D"${1}" =20 - _printf "%-68s" "${test_name}" + mptcp_lib_print_test_counter test_cnt "%-68s" "${test_name}" } =20 test_pass() --=20 2.40.1 From nobody Wed May 15 05:50:26 2024 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 08A6D1C696 for ; Mon, 26 Feb 2024 08:18:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935501; cv=none; b=rRBR0BZFDYHvxkT3ZzaLg2jsFXkfMHbsAsX8Hzycmw+fwwz4EsAjORA9dgjpq5oRlWHQD0yhk7oTu5E9aLxMrAEYDdpMLNfsExdmIsxlE/3dTes7lOJa/2vHdubRMg56yoIp2g1Gmbnt7rYkyN0bX1rNXZce/GGqjnGgs68gMmU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935501; c=relaxed/simple; bh=3mmsfu3iK1ss81OMx56mOa5UE9/YU3QMIacTB+kODfM=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=MoirdIt7RzR7vgLwX4fbB7V3s543ODddwq7/Gi11wr0c9bFALgPMYPLRwcqKTngkfUUWBLYL9KibOHFGaUPawcZ41Pkg1D5THVjJG4WPtDFiOsBz29O/m0D/JytA2DbeiIciv0flsvGlDz9ueS/tvR2A5O9kV962zfdm8T8mvw8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=EzxQLX/J; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="EzxQLX/J" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 65DFCC43390; Mon, 26 Feb 2024 08:18:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708935500; bh=3mmsfu3iK1ss81OMx56mOa5UE9/YU3QMIacTB+kODfM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=EzxQLX/JEpkCm/ykC4mS3kyqk2pfTmSSwqPw6xbnV9wB9xsqTeryahJZtMoSz5hNw NreLpAUEuJMWanAh+ElaXs/rfyh5tul5V/+10hHdXkYKHaLO0ANnaq3FgQG208MOjW wngFf1EJczBMSuEQiBZPj5jq709KrUWKl+GcFEKmKh7n6KeQy2QhKjkMAaEs8wde73 oGeOfcaF9zrm2EpB03EfqHLv2QbOLQC6zd8dcCBgBtOyVKakqT9lAYpQyhNu08iYOV HublMBcAy+0vz1KfGs+YpmU+cpziKtx293gN15V05fyBUZTTn/acJaVCAuD92cFzbC 9sq9/m7aBlrAA== From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v4 09/13] selftests: mptcp: move test_fail out of check_expected_one Date: Mon, 26 Feb 2024 16:17:54 +0800 Message-Id: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geliang Tang This patch moves test_fail out of check_expected_one(), since test_fail is a private function in userspace_pm.sh, and check_expected_one will be exported in mptcp_lib.sh in the next commit. Signed-off-by: Geliang Tang --- tools/testing/selftests/net/mptcp/userspace_pm.sh | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/userspace_pm.sh b/tools/test= ing/selftests/net/mptcp/userspace_pm.sh index 27f308601005..473639a8009f 100755 --- a/tools/testing/selftests/net/mptcp/userspace_pm.sh +++ b/tools/testing/selftests/net/mptcp/userspace_pm.sh @@ -247,7 +247,7 @@ check_expected_one() =20 if [ "${prev_ret}" =3D "0" ] then - test_fail + return 2 fi =20 _printf "\tExpected value for '%s': '%s', got '%s'.\n" \ @@ -263,13 +263,20 @@ check_expected() =20 for var in "${@}" do - check_expected_one "${var}" "${rc}" || rc=3D1 + check_expected_one "${var}" "${rc}" || rc=3D"${?}" + if [ "${rc}" -eq 2 ] + then + break + fi done =20 if [ ${rc} -eq 0 ] then test_pass return 0 + elif [ "${rc}" -eq 2 ] + then + test_fail fi =20 return 1 --=20 2.40.1 From nobody Wed May 15 05:50:26 2024 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C742C1C696 for ; Mon, 26 Feb 2024 08:18:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935502; cv=none; b=hG/z6lHP4Vvt/0qmLkikGlYsioeZvihVu4jRVV4m6EChtlYTRFBSJQVQUTz469ul4yHpNQ6FmKqYBkc0eelga0/KBre5xEzF7UKnk92i8FBVBJh8XQJFiF0Txgwj/dOgKwOrCRfQJ7YT8YvxIIfW+sVb0OctkEdLAR2s5CafB4Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935502; c=relaxed/simple; bh=CwguBhWAPp5I4T0KHxFeeBi/8OMB42NkicDGnQTehrA=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=s9iCK8lyRWAQQ8NfyxuZf+srhJLP+Mj+CWp7OSQOeUhFw+26vYsYAZkmb2DrroJeK9ZUqFY0nK+hsNPBNv6vHN5o0scj5Q0FaPXIAdlAiQKw+u1KsBds3FEM7qLdcZrMtxrkwXZmWf9qo6l+08Bpx0Uaqt27NTkbM3orfuLO43s= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=tAQnSE9d; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="tAQnSE9d" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3D3B1C43394; Mon, 26 Feb 2024 08:18:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708935502; bh=CwguBhWAPp5I4T0KHxFeeBi/8OMB42NkicDGnQTehrA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=tAQnSE9d+8kHOSTauKTQAATtCidbyPpLGzxrXz68mi1xeR+6150EB9Coe8CBSUvGU LyW/Nf6ObkSMROXHVJTgfgkjt3UftLYq1rDHOwwIo59SOnOzNbSuj+qknnfcsLHPxA 4vZzsUIcjCzTZdVGERtF9HxyUhX3e4jc+iMNa94vgDj93AAPUAp9A9Hl4b1ZRZjdNJ zmT1i/B0qzuapWufQeEpwpDHNKfRBx84Q3Hy1VgVEThdpz3sOwDEKQXts6zM+rSiX6 eYbFCaP/gQJb+0Bgum6YSXmjaD2FgXSVw0PwBW4jvS61a4o5BTOUUD3nzP1x5O/Nft 9UivZDLaWb6Jg== From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v4 10/13] selftests: mptcp: extract mptcp_lib_check_expected Date: Mon, 26 Feb 2024 16:17:55 +0800 Message-Id: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geliang Tang Extract the main part of check_expected() in userspace_pm.sh to a new function mptcp_lib_check_expected() in mptcp_lib.sh. It will be used in both mptcp_john.sh and userspace_pm.sh. check_expected_one() is moved into mptcp_lib.sh too as a sub function of mptcp_lib_check_expected(). Signed-off-by: Geliang Tang --- .../testing/selftests/net/mptcp/mptcp_lib.sh | 48 +++++++++++++++++++ .../selftests/net/mptcp/userspace_pm.sh | 39 ++------------- 2 files changed, 52 insertions(+), 35 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/mptcp_lib.sh b/tools/testing= /selftests/net/mptcp/mptcp_lib.sh index 482e88f5b7bf..141ade36c373 100644 --- a/tools/testing/selftests/net/mptcp/mptcp_lib.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_lib.sh @@ -1,6 +1,9 @@ #! /bin/bash # SPDX-License-Identifier: GPL-2.0 =20 +# Some variables are used below but indirectly, see check_expected_one() +#shellcheck disable=3DSC2034 + readonly KSFT_PASS=3D0 readonly KSFT_FAIL=3D1 readonly KSFT_SKIP=3D4 @@ -420,3 +423,48 @@ mptcp_lib_print_test_counter() { =20 printf "%0${digit}u ${fmt}" "$((++counter))" "${msg}" } + +# $@: all var names to check +mptcp_lib_check_expected() { + # $1: var name ; $2: prev ret + check_expected_one() { + local var=3D"${1}" + local exp=3D"e_${var}" + local prev_ret=3D"${2}" + + if [ "${!var}" =3D "${!exp}" ] + then + return 0 + fi + + if [ "${prev_ret}" =3D "0" ] + then + return 2 + fi + + printf "\tExpected value for '%s': '%s', got '%s'.\n" \ + "${var}" "${!exp}" "${!var}" + return 1 + } + + local rc=3D0 + local var + + for var in "${@}" + do + check_expected_one "${var}" "${rc}" || rc=3D"${?}" + if [ "${rc}" -eq 2 ] + then + break + fi + done + unset -f check_expected_one + + if [ ${rc} -eq 0 ] + then + mptcp_lib_print_ok "[ OK ]" + return 0 + fi + + return "${rc}" +} diff --git a/tools/testing/selftests/net/mptcp/userspace_pm.sh b/tools/test= ing/selftests/net/mptcp/userspace_pm.sh index 473639a8009f..3f475ae44d0b 100755 --- a/tools/testing/selftests/net/mptcp/userspace_pm.sh +++ b/tools/testing/selftests/net/mptcp/userspace_pm.sh @@ -5,7 +5,7 @@ # code but we accept it. #shellcheck disable=3DSC2086 =20 -# Some variables are used below but indirectly, see check_expected_one() +# Some variables are used below but indirectly #shellcheck disable=3DSC2034 =20 . "$(dirname "${0}")/mptcp_lib.sh" @@ -233,46 +233,15 @@ make_connection() fi } =20 -# $1: var name ; $2: prev ret -check_expected_one() -{ - local var=3D"${1}" - local exp=3D"e_${var}" - local prev_ret=3D"${2}" - - if [ "${!var}" =3D "${!exp}" ] - then - return 0 - fi - - if [ "${prev_ret}" =3D "0" ] - then - return 2 - fi - - _printf "\tExpected value for '%s': '%s', got '%s'.\n" \ - "${var}" "${!exp}" "${!var}" - return 1 -} - # $@: all var names to check check_expected() { local rc=3D0 - local var =20 - for var in "${@}" - do - check_expected_one "${var}" "${rc}" || rc=3D"${?}" - if [ "${rc}" -eq 2 ] - then - break - fi - done - - if [ ${rc} -eq 0 ] + mptcp_lib_check_expected "${@}" || rc=3D"${?}" + if [ "${rc}" -eq 0 ] then - test_pass + mptcp_lib_result_pass "${test_name}" return 0 elif [ "${rc}" -eq 2 ] then --=20 2.40.1 From nobody Wed May 15 05:50:26 2024 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5BD671C696 for ; Mon, 26 Feb 2024 08:18:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935504; cv=none; b=Ot0JIw+SaAfuxpGgU16ALx/rmFv6B4LgT95BomEK8XWCsBtDNysnNGy/bUvfRXtQfdEXArFH6JQCMKIstKAdzdIGFR89O7Vtyn8fdNcffbxWsumT2jFex99XD+XZdFSdpbWOT42lMwMUZPvdEaSw4EB0fv7vJ5sOiSpKoMV08Kk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935504; c=relaxed/simple; bh=hhy5wm+LiAbIVu8rhmmBUlevpispT+a22AaQJSu9mmA=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=dY/IEM4CkIv9k69XWTtGRsjctbxT08lcijseFxlSfZ92wpb7GrN2CIXa59Lx+PfsE6ApW9PeoH0yWufoMrvfBxvEn5Lr8OHH2ZoNKSsSs1BncN9cT3cT+yxw6nHjozcl9tjiPZE/jlIa4jVnrxyHb+FFllluvqyz9G3NdoX4PJY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=o/hd/SEZ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="o/hd/SEZ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1683BC433F1; Mon, 26 Feb 2024 08:18:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708935504; bh=hhy5wm+LiAbIVu8rhmmBUlevpispT+a22AaQJSu9mmA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=o/hd/SEZLM/QMjDK0su5WBGZxLBFDGyP/jMjwh3RVp4EygEOJJ/2Q2O7kKHZ3CkyB W/4bkNNHm3ioxJlfVCCRgXrkE0eBiN+dlhkmvblxX5C3mfzwX11Xv5SKVfHXWBCbsF kW+ua9lHLR2n+B0hpdNFi6fsMcwjh6Pnn2ZQOGFrlmX97VQvRT1AWETT3CYgKCxpx2 slSNxgrv2PHA1MaM+WekhQVrpq8X1QLFUpAY3qe/0xdYQZanB9WTFiQFsHV3tGWf19 B7cvVqoMUiTnklhBeoPFERBLRQBiPXR72PL2x51RyzikwExcORUCw9eaPPogLcXZ62 LDddAGRgWqKAQ== From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v4 11/13] selftests: mptcp: export event macros in mptcp_lib Date: Mon, 26 Feb 2024 16:17:56 +0800 Message-Id: <4cc3756c5100d809b5058ac956a8676db641cccc.1708935196.git.tanggeliang@kylinos.cn> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geliang Tang SUB_ESTABLISHED, LISTENER_CREATED, LISTENER_CLOSED, AF_INET and AF_INET6 are defined in both mptcp_join.sh and userspace_pm.sh, export all event macros into mptcp_lib.sh. Add MPTCP_LIB_ prefix for the first three and add readonly for the last two. Signed-off-by: Geliang Tang --- .../testing/selftests/net/mptcp/mptcp_join.sh | 23 ++-- .../testing/selftests/net/mptcp/mptcp_lib.sh | 11 ++ .../selftests/net/mptcp/userspace_pm.sh | 121 +++++++++--------- 3 files changed, 80 insertions(+), 75 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testin= g/selftests/net/mptcp/mptcp_join.sh index 0d45578f7858..e37ba5d46d9d 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -2788,13 +2788,6 @@ backup_tests() fi } =20 -SUB_ESTABLISHED=3D10 # MPTCP_EVENT_SUB_ESTABLISHED -LISTENER_CREATED=3D15 #MPTCP_EVENT_LISTENER_CREATED -LISTENER_CLOSED=3D16 #MPTCP_EVENT_LISTENER_CLOSED - -AF_INET=3D2 -AF_INET6=3D10 - verify_listener_events() { local evt=3D$1 @@ -2808,9 +2801,9 @@ verify_listener_events() local sport local name =20 - if [ $e_type =3D $LISTENER_CREATED ]; then + if [ $e_type =3D $MPTCP_LIB_LISTENER_CREATED ]; then name=3D"LISTENER_CREATED" - elif [ $e_type =3D $LISTENER_CLOSED ]; then + elif [ $e_type =3D $MPTCP_LIB_LISTENER_CLOSED ]; then name=3D"LISTENER_CLOSED " else name=3D"$e_type" @@ -2877,8 +2870,10 @@ add_addr_ports_tests() chk_add_nr 1 1 1 chk_rm_nr 1 1 invert =20 - verify_listener_events $evts_ns1 $LISTENER_CREATED $AF_INET 10.0.2.1 101= 00 - verify_listener_events $evts_ns1 $LISTENER_CLOSED $AF_INET 10.0.2.1 10100 + verify_listener_events $evts_ns1 $MPTCP_LIB_LISTENER_CREATED \ + $AF_INET 10.0.2.1 10100 + verify_listener_events $evts_ns1 $MPTCP_LIB_LISTENER_CLOSED \ + $AF_INET 10.0.2.1 10100 kill_events_pids fi =20 @@ -3484,11 +3479,11 @@ userspace_tests() userspace_pm_chk_get_addr "${ns1}" "10" "id 10 flags signal 10.0.2.1" userspace_pm_chk_get_addr "${ns1}" "20" "id 20 flags signal 10.0.3.1" userspace_pm_rm_addr $ns1 10 - userspace_pm_rm_sf $ns1 "::ffff:10.0.2.1" $SUB_ESTABLISHED + userspace_pm_rm_sf $ns1 "::ffff:10.0.2.1" $MPTCP_LIB_SUB_ESTABLISHED userspace_pm_chk_dump_addr "${ns1}" \ "id 20 flags signal 10.0.3.1" "after rm_addr 10" userspace_pm_rm_addr $ns1 20 - userspace_pm_rm_sf $ns1 10.0.3.1 $SUB_ESTABLISHED + userspace_pm_rm_sf $ns1 10.0.3.1 $MPTCP_LIB_SUB_ESTABLISHED userspace_pm_chk_dump_addr "${ns1}" "" "after rm_addr 20" chk_rm_nr 2 2 invert chk_mptcp_info subflows 0 subflows 0 @@ -3515,7 +3510,7 @@ userspace_tests() "subflow" userspace_pm_chk_get_addr "${ns2}" "20" "id 20 flags subflow 10.0.3.2" userspace_pm_rm_addr $ns2 20 - userspace_pm_rm_sf $ns2 10.0.3.2 $SUB_ESTABLISHED + userspace_pm_rm_sf $ns2 10.0.3.2 $MPTCP_LIB_SUB_ESTABLISHED userspace_pm_chk_dump_addr "${ns2}" \ "" \ "after rm_addr 20" diff --git a/tools/testing/selftests/net/mptcp/mptcp_lib.sh b/tools/testing= /selftests/net/mptcp/mptcp_lib.sh index 141ade36c373..b75b7aedcd1c 100644 --- a/tools/testing/selftests/net/mptcp/mptcp_lib.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_lib.sh @@ -2,6 +2,7 @@ # SPDX-License-Identifier: GPL-2.0 =20 # Some variables are used below but indirectly, see check_expected_one() +# MPTCP_LIB_ANNOUNCED and AF_INET #shellcheck disable=3DSC2034 =20 readonly KSFT_PASS=3D0 @@ -11,6 +12,16 @@ readonly KSFT_SKIP=3D4 # shellcheck disable=3DSC2155 # declare and assign separately readonly KSFT_TEST=3D"${MPTCP_LIB_KSFT_TEST:-$(basename "${0}" .sh)}" =20 +MPTCP_LIB_ANNOUNCED=3D6 # MPTCP_EVENT_ANNOUNCED +MPTCP_LIB_REMOVED=3D7 # MPTCP_EVENT_REMOVED +MPTCP_LIB_SUB_ESTABLISHED=3D10 # MPTCP_EVENT_SUB_ESTABLISHED +MPTCP_LIB_SUB_CLOSED=3D11 # MPTCP_EVENT_SUB_CLOSED +MPTCP_LIB_LISTENER_CREATED=3D15 #MPTCP_EVENT_LISTENER_CREATED +MPTCP_LIB_LISTENER_CLOSED=3D16 #MPTCP_EVENT_LISTENER_CLOSED + +readonly AF_INET=3D2 +readonly AF_INET6=3D10 + MPTCP_LIB_SUBTESTS=3D() MPTCP_LIB_SUBTESTS_DUPLICATED=3D0 =20 diff --git a/tools/testing/selftests/net/mptcp/userspace_pm.sh b/tools/test= ing/selftests/net/mptcp/userspace_pm.sh index 3f475ae44d0b..6d358b7e47e9 100755 --- a/tools/testing/selftests/net/mptcp/userspace_pm.sh +++ b/tools/testing/selftests/net/mptcp/userspace_pm.sh @@ -19,16 +19,6 @@ if ! mptcp_lib_has_file '/proc/sys/net/mptcp/pm_type'; t= hen fi mptcp_lib_check_tools ip =20 -ANNOUNCED=3D6 # MPTCP_EVENT_ANNOUNCED -REMOVED=3D7 # MPTCP_EVENT_REMOVED -SUB_ESTABLISHED=3D10 # MPTCP_EVENT_SUB_ESTABLISHED -SUB_CLOSED=3D11 # MPTCP_EVENT_SUB_CLOSED -LISTENER_CREATED=3D15 #MPTCP_EVENT_LISTENER_CREATED -LISTENER_CLOSED=3D16 #MPTCP_EVENT_LISTENER_CLOSED - -AF_INET=3D2 -AF_INET6=3D10 - file=3D"" server_evts=3D"" client_evts=3D"" @@ -309,8 +299,8 @@ test_announce() ns2eth1 print_test "ADD_ADDR id:${client_addr_id} 10.0.2.2 (ns2) =3D> ns1, reuse = port" sleep 0.5 - verify_announce_event $server_evts $ANNOUNCED $server4_token "10.0.2.2" $= client_addr_id \ - "$client4_port" + verify_announce_event $server_evts $MPTCP_LIB_ANNOUNCED $server4_token \ + "10.0.2.2" $client_addr_id "$client4_port" =20 # ADD_ADDR6 from the client to server machine reusing the subflow port :>"$server_evts" @@ -318,8 +308,8 @@ test_announce() dead:beef:2::2 token "$client6_token" id $client_addr_id dev ns2eth1 print_test "ADD_ADDR6 id:${client_addr_id} dead:beef:2::2 (ns2) =3D> ns1,= reuse port" sleep 0.5 - verify_announce_event "$server_evts" "$ANNOUNCED" "$server6_token" "dead:= beef:2::2"\ - "$client_addr_id" "$client6_port" "v6" + verify_announce_event "$server_evts" "$MPTCP_LIB_ANNOUNCED" "$server6_tok= en" \ + "dead:beef:2::2" "$client_addr_id" "$client6_port" "v6" =20 # ADD_ADDR from the client to server machine using a new port :>"$server_evts" @@ -328,7 +318,7 @@ test_announce() $client_addr_id dev ns2eth1 port $new4_port print_test "ADD_ADDR id:${client_addr_id} 10.0.2.2 (ns2) =3D> ns1, new po= rt" sleep 0.5 - verify_announce_event "$server_evts" "$ANNOUNCED" "$server4_token" "10.0.= 2.2"\ + verify_announce_event "$server_evts" "$MPTCP_LIB_ANNOUNCED" "$server4_tok= en" "10.0.2.2"\ "$client_addr_id" "$new4_port" =20 # Capture events on the network namespace running the client @@ -339,7 +329,7 @@ test_announce() $server_addr_id dev ns1eth2 print_test "ADD_ADDR id:${server_addr_id} 10.0.2.1 (ns1) =3D> ns2, reuse = port" sleep 0.5 - verify_announce_event "$client_evts" "$ANNOUNCED" "$client4_token" "10.0.= 2.1"\ + verify_announce_event "$client_evts" "$MPTCP_LIB_ANNOUNCED" "$client4_tok= en" "10.0.2.1"\ "$server_addr_id" "$app4_port" =20 # ADD_ADDR6 from the server to client machine reusing the subflow port @@ -348,8 +338,8 @@ test_announce() $server_addr_id dev ns1eth2 print_test "ADD_ADDR6 id:${server_addr_id} dead:beef:2::1 (ns1) =3D> ns2,= reuse port" sleep 0.5 - verify_announce_event "$client_evts" "$ANNOUNCED" "$client6_token" "dead:= beef:2::1"\ - "$server_addr_id" "$app6_port" "v6" + verify_announce_event "$client_evts" "$MPTCP_LIB_ANNOUNCED" "$client6_tok= en" \ + "dead:beef:2::1" "$server_addr_id" "$app6_port" "v6" =20 # ADD_ADDR from the server to client machine using a new port :>"$client_evts" @@ -358,7 +348,7 @@ test_announce() $server_addr_id dev ns1eth2 port $new4_port print_test "ADD_ADDR id:${server_addr_id} 10.0.2.1 (ns1) =3D> ns2, new po= rt" sleep 0.5 - verify_announce_event "$client_evts" "$ANNOUNCED" "$client4_token" "10.0.= 2.1"\ + verify_announce_event "$client_evts" "$MPTCP_LIB_ANNOUNCED" "$client4_tok= en" "10.0.2.1"\ "$server_addr_id" "$new4_port" } =20 @@ -419,7 +409,7 @@ test_remove() $client_addr_id print_test "RM_ADDR id:${client_addr_id} ns2 =3D> ns1" sleep 0.5 - verify_remove_event "$server_evts" "$REMOVED" "$server4_token" "$client_a= ddr_id" + verify_remove_event "$server_evts" "$MPTCP_LIB_REMOVED" "$server4_token" = "$client_addr_id" =20 # RM_ADDR from the client to server machine :>"$server_evts" @@ -428,7 +418,7 @@ test_remove() $client_addr_id print_test "RM_ADDR id:${client_addr_id} ns2 =3D> ns1" sleep 0.5 - verify_remove_event "$server_evts" "$REMOVED" "$server4_token" "$client_a= ddr_id" + verify_remove_event "$server_evts" "$MPTCP_LIB_REMOVED" "$server4_token" = "$client_addr_id" =20 # RM_ADDR6 from the client to server machine :>"$server_evts" @@ -436,7 +426,7 @@ test_remove() $client_addr_id print_test "RM_ADDR6 id:${client_addr_id} ns2 =3D> ns1" sleep 0.5 - verify_remove_event "$server_evts" "$REMOVED" "$server6_token" "$client_a= ddr_id" + verify_remove_event "$server_evts" "$MPTCP_LIB_REMOVED" "$server6_token" = "$client_addr_id" =20 # Capture events on the network namespace running the client :>"$client_evts" @@ -446,7 +436,7 @@ test_remove() $server_addr_id print_test "RM_ADDR id:${server_addr_id} ns1 =3D> ns2" sleep 0.5 - verify_remove_event "$client_evts" "$REMOVED" "$client4_token" "$server_a= ddr_id" + verify_remove_event "$client_evts" "$MPTCP_LIB_REMOVED" "$client4_token" = "$server_addr_id" =20 # RM_ADDR from the server to client machine :>"$client_evts" @@ -455,7 +445,7 @@ test_remove() $server_addr_id print_test "RM_ADDR id:${server_addr_id} ns1 =3D> ns2" sleep 0.5 - verify_remove_event "$client_evts" "$REMOVED" "$client4_token" "$server_a= ddr_id" + verify_remove_event "$client_evts" "$MPTCP_LIB_REMOVED" "$client4_token" = "$server_addr_id" =20 # RM_ADDR6 from the server to client machine :>"$client_evts" @@ -463,7 +453,7 @@ test_remove() $server_addr_id print_test "RM_ADDR6 id:${server_addr_id} ns1 =3D> ns2" sleep 0.5 - verify_remove_event "$client_evts" "$REMOVED" "$client6_token" "$server_a= ddr_id" + verify_remove_event "$client_evts" "$MPTCP_LIB_REMOVED" "$client6_token" = "$server_addr_id" } =20 verify_subflow_events() @@ -492,7 +482,7 @@ verify_subflow_events() =20 info=3D"${e_saddr} (${e_from}) =3D> ${e_daddr}:${e_dport} (${e_to})" =20 - if [ "$e_type" =3D "$SUB_ESTABLISHED" ] + if [ "$e_type" =3D "$MPTCP_LIB_SUB_ESTABLISHED" ] then if [ "$e_family" =3D "$AF_INET6" ] then @@ -549,22 +539,24 @@ test_subflows() ip netns exec "$ns1" ./pm_nl_ctl csf lip 10.0.2.1 lid 23 rip 10.0.2.2\ rport "$client4_port" token "$server4_token" sleep 0.5 - verify_subflow_events $server_evts $SUB_ESTABLISHED $server4_token $AF_IN= ET "10.0.2.1" \ - "10.0.2.2" "$client4_port" "23" "$client_addr_id" "ns1" "ns2" + verify_subflow_events $server_evts $MPTCP_LIB_SUB_ESTABLISHED $server4_to= ken \ + $AF_INET "10.0.2.1" "10.0.2.2" "$client4_port" "23" \ + "$client_addr_id" "ns1" "ns2" =20 # Delete the listener from the client ns, if one was created mptcp_lib_kill_wait $listener_pid =20 local sport - sport=3D$(mptcp_lib_evts_get_info sport "$server_evts" $SUB_ESTABLISHED) + sport=3D$(mptcp_lib_evts_get_info sport "$server_evts" $MPTCP_LIB_SUB_EST= ABLISHED) =20 # DESTROY_SUBFLOW from server to client machine :>"$server_evts" ip netns exec "$ns1" ./pm_nl_ctl dsf lip 10.0.2.1 lport "$sport" rip 10.0= .2.2 rport\ "$client4_port" token "$server4_token" sleep 0.5 - verify_subflow_events "$server_evts" "$SUB_CLOSED" "$server4_token" "$AF_= INET" "10.0.2.1"\ - "10.0.2.2" "$client4_port" "23" "$client_addr_id" "ns1" "ns2" + verify_subflow_events "$server_evts" "$MPTCP_LIB_SUB_CLOSED" "$server4_to= ken" \ + "$AF_INET" "10.0.2.1" "10.0.2.2" "$client4_port" "23" \ + "$client_addr_id" "ns1" "ns2" =20 # RM_ADDR from client to server machine ip netns exec "$ns2" ./pm_nl_ctl rem id $client_addr_id token\ @@ -587,21 +579,21 @@ test_subflows() ip netns exec "$ns1" ./pm_nl_ctl csf lip dead:beef:2::1 lid 23 rip\ dead:beef:2::2 rport "$client6_port" token "$server6_token" sleep 0.5 - verify_subflow_events "$server_evts" "$SUB_ESTABLISHED" "$server6_token" = "$AF_INET6"\ - "dead:beef:2::1" "dead:beef:2::2" "$client6_port" "23"\ - "$client_addr_id" "ns1" "ns2" + verify_subflow_events "$server_evts" "$MPTCP_LIB_SUB_ESTABLISHED" "$serve= r6_token" \ + "$AF_INET6" "dead:beef:2::1" "dead:beef:2::2" "$client6_port" \ + "23" "$client_addr_id" "ns1" "ns2" =20 # Delete the listener from the client ns, if one was created mptcp_lib_kill_wait $listener_pid =20 - sport=3D$(mptcp_lib_evts_get_info sport "$server_evts" $SUB_ESTABLISHED) + sport=3D$(mptcp_lib_evts_get_info sport "$server_evts" $MPTCP_LIB_SUB_EST= ABLISHED) =20 # DESTROY_SUBFLOW6 from server to client machine :>"$server_evts" ip netns exec "$ns1" ./pm_nl_ctl dsf lip dead:beef:2::1 lport "$sport" ri= p\ dead:beef:2::2 rport "$client6_port" token "$server6_token" sleep 0.5 - verify_subflow_events "$server_evts" "$SUB_CLOSED" "$server6_token" "$AF_= INET6"\ + verify_subflow_events "$server_evts" "$MPTCP_LIB_SUB_CLOSED" "$server6_to= ken" "$AF_INET6"\ "dead:beef:2::1" "dead:beef:2::2" "$client6_port" "23"\ "$client_addr_id" "ns1" "ns2" =20 @@ -626,22 +618,23 @@ test_subflows() ip netns exec "$ns1" ./pm_nl_ctl csf lip 10.0.2.1 lid 23 rip 10.0.2.2 rpo= rt\ $new4_port token "$server4_token" sleep 0.5 - verify_subflow_events "$server_evts" "$SUB_ESTABLISHED" "$server4_token" = "$AF_INET"\ - "10.0.2.1" "10.0.2.2" "$new4_port" "23"\ + verify_subflow_events "$server_evts" "$MPTCP_LIB_SUB_ESTABLISHED" "$serve= r4_token" \ + "$AF_INET" "10.0.2.1" "10.0.2.2" "$new4_port" "23" \ "$client_addr_id" "ns1" "ns2" =20 # Delete the listener from the client ns, if one was created mptcp_lib_kill_wait $listener_pid =20 - sport=3D$(mptcp_lib_evts_get_info sport "$server_evts" $SUB_ESTABLISHED) + sport=3D$(mptcp_lib_evts_get_info sport "$server_evts" $MPTCP_LIB_SUB_EST= ABLISHED) =20 # DESTROY_SUBFLOW from server to client machine :>"$server_evts" ip netns exec "$ns1" ./pm_nl_ctl dsf lip 10.0.2.1 lport "$sport" rip 10.0= .2.2 rport\ $new4_port token "$server4_token" sleep 0.5 - verify_subflow_events "$server_evts" "$SUB_CLOSED" "$server4_token" "$AF_= INET" "10.0.2.1"\ - "10.0.2.2" "$new4_port" "23" "$client_addr_id" "ns1" "ns2" + verify_subflow_events "$server_evts" "$MPTCP_LIB_SUB_CLOSED" "$server4_to= ken" \ + "$AF_INET" "10.0.2.1" "10.0.2.2" "$new4_port" "23" \ + "$client_addr_id" "ns1" "ns2" =20 # RM_ADDR from client to server machine ip netns exec "$ns2" ./pm_nl_ctl rem id $client_addr_id token\ @@ -665,21 +658,22 @@ test_subflows() ip netns exec "$ns2" ./pm_nl_ctl csf lip 10.0.2.2 lid 23 rip 10.0.2.1 rpo= rt\ $app4_port token "$client4_token" sleep 0.5 - verify_subflow_events $client_evts $SUB_ESTABLISHED $client4_token $AF_IN= ET "10.0.2.2"\ - "10.0.2.1" "$app4_port" "23" "$server_addr_id" "ns2" "ns1" + verify_subflow_events $client_evts $MPTCP_LIB_SUB_ESTABLISHED $client4_to= ken $AF_INET \ + "10.0.2.2" "10.0.2.1" "$app4_port" "23" "$server_addr_id" "ns2" "= ns1" =20 # Delete the listener from the server ns, if one was created mptcp_lib_kill_wait $listener_pid =20 - sport=3D$(mptcp_lib_evts_get_info sport "$client_evts" $SUB_ESTABLISHED) + sport=3D$(mptcp_lib_evts_get_info sport "$client_evts" $MPTCP_LIB_SUB_EST= ABLISHED) =20 # DESTROY_SUBFLOW from client to server machine :>"$client_evts" ip netns exec "$ns2" ./pm_nl_ctl dsf lip 10.0.2.2 lport "$sport" rip 10.0= .2.1 rport\ $app4_port token "$client4_token" sleep 0.5 - verify_subflow_events "$client_evts" "$SUB_CLOSED" "$client4_token" "$AF_= INET" "10.0.2.2"\ - "10.0.2.1" "$app4_port" "23" "$server_addr_id" "ns2" "ns1" + verify_subflow_events "$client_evts" "$MPTCP_LIB_SUB_CLOSED" "$client4_to= ken" \ + "$AF_INET" "10.0.2.2" "10.0.2.1" "$app4_port" "23" \ + "$server_addr_id" "ns2" "ns1" =20 # RM_ADDR from server to client machine ip netns exec "$ns1" ./pm_nl_ctl rem id $server_addr_id token\ @@ -702,7 +696,7 @@ test_subflows() ip netns exec "$ns2" ./pm_nl_ctl csf lip dead:beef:2::2 lid 23 rip\ dead:beef:2::1 rport $app6_port token "$client6_token" sleep 0.5 - verify_subflow_events "$client_evts" "$SUB_ESTABLISHED" "$client6_token"\ + verify_subflow_events "$client_evts" "$MPTCP_LIB_SUB_ESTABLISHED" "$clien= t6_token"\ "$AF_INET6" "dead:beef:2::2"\ "dead:beef:2::1" "$app6_port" "23"\ "$server_addr_id" "ns2" "ns1" @@ -710,15 +704,16 @@ test_subflows() # Delete the listener from the server ns, if one was created mptcp_lib_kill_wait $listener_pid =20 - sport=3D$(mptcp_lib_evts_get_info sport "$client_evts" $SUB_ESTABLISHED) + sport=3D$(mptcp_lib_evts_get_info sport "$client_evts" $MPTCP_LIB_SUB_EST= ABLISHED) =20 # DESTROY_SUBFLOW6 from client to server machine :>"$client_evts" ip netns exec "$ns2" ./pm_nl_ctl dsf lip dead:beef:2::2 lport "$sport" ri= p\ dead:beef:2::1 rport $app6_port token "$client6_token" sleep 0.5 - verify_subflow_events $client_evts $SUB_CLOSED $client6_token $AF_INET6 "= dead:beef:2::2"\ - "dead:beef:2::1" "$app6_port" "23" "$server_addr_id" "ns2" "ns1" + verify_subflow_events $client_evts $MPTCP_LIB_SUB_CLOSED $client6_token \ + $AF_INET6 "dead:beef:2::2" "dead:beef:2::1" "$app6_port" \ + "23" "$server_addr_id" "ns2" "ns1" =20 # RM_ADDR6 from server to client machine ip netns exec "$ns1" ./pm_nl_ctl rem id $server_addr_id token\ @@ -741,21 +736,23 @@ test_subflows() ip netns exec "$ns2" ./pm_nl_ctl csf lip 10.0.2.2 lid 23 rip 10.0.2.1 rpo= rt\ $new4_port token "$client4_token" sleep 0.5 - verify_subflow_events "$client_evts" "$SUB_ESTABLISHED" "$client4_token" = "$AF_INET"\ - "10.0.2.2" "10.0.2.1" "$new4_port" "23" "$server_addr_id" "ns2" "= ns1" + verify_subflow_events "$client_evts" "$MPTCP_LIB_SUB_ESTABLISHED" "$clien= t4_token" \ + "$AF_INET" "10.0.2.2" "10.0.2.1" "$new4_port" "23" \ + "$server_addr_id" "ns2" "ns1" =20 # Delete the listener from the server ns, if one was created mptcp_lib_kill_wait $listener_pid =20 - sport=3D$(mptcp_lib_evts_get_info sport "$client_evts" $SUB_ESTABLISHED) + sport=3D$(mptcp_lib_evts_get_info sport "$client_evts" $MPTCP_LIB_SUB_EST= ABLISHED) =20 # DESTROY_SUBFLOW from client to server machine :>"$client_evts" ip netns exec "$ns2" ./pm_nl_ctl dsf lip 10.0.2.2 lport "$sport" rip 10.0= .2.1 rport\ $new4_port token "$client4_token" sleep 0.5 - verify_subflow_events "$client_evts" "$SUB_CLOSED" "$client4_token" "$AF_= INET" "10.0.2.2"\ - "10.0.2.1" "$new4_port" "23" "$server_addr_id" "ns2" "ns1" + verify_subflow_events "$client_evts" "$MPTCP_LIB_SUB_CLOSED" "$client4_to= ken" \ + "$AF_INET" "10.0.2.2" "10.0.2.1" "$new4_port" "23" \ + "$server_addr_id" "ns2" "ns1" =20 # RM_ADDR from server to client machine ip netns exec "$ns1" ./pm_nl_ctl rem id $server_addr_id token\ @@ -778,7 +775,7 @@ test_subflows_v4_v6_mix() $server_addr_id dev ns1eth2 print_test "ADD_ADDR4 id:${server_addr_id} 10.0.2.1 (ns1) =3D> ns2, reuse= port" sleep 0.5 - verify_announce_event "$client_evts" "$ANNOUNCED" "$client6_token" "10.0.= 2.1"\ + verify_announce_event "$client_evts" "$MPTCP_LIB_ANNOUNCED" "$client6_tok= en" "10.0.2.1"\ "$server_addr_id" "$app6_port" =20 # CREATE_SUBFLOW from client to server machine @@ -786,21 +783,21 @@ test_subflows_v4_v6_mix() ip netns exec "$ns2" ./pm_nl_ctl csf lip 10.0.2.2 lid 23 rip 10.0.2.1 rpo= rt\ $app6_port token "$client6_token" sleep 0.5 - verify_subflow_events "$client_evts" "$SUB_ESTABLISHED" "$client6_token"\ + verify_subflow_events "$client_evts" "$MPTCP_LIB_SUB_ESTABLISHED" "$clien= t6_token"\ "$AF_INET" "10.0.2.2" "10.0.2.1" "$app6_port" "23"\ "$server_addr_id" "ns2" "ns1" =20 # Delete the listener from the server ns, if one was created mptcp_lib_kill_wait $listener_pid =20 - sport=3D$(mptcp_lib_evts_get_info sport "$client_evts" $SUB_ESTABLISHED) + sport=3D$(mptcp_lib_evts_get_info sport "$client_evts" $MPTCP_LIB_SUB_EST= ABLISHED) =20 # DESTROY_SUBFLOW from client to server machine :>"$client_evts" ip netns exec "$ns2" ./pm_nl_ctl dsf lip 10.0.2.2 lport "$sport" rip 10.0= .2.1 rport\ $app6_port token "$client6_token" sleep 0.5 - verify_subflow_events "$client_evts" "$SUB_CLOSED" "$client6_token" \ + verify_subflow_events "$client_evts" "$MPTCP_LIB_SUB_CLOSED" "$client6_to= ken" \ "$AF_INET" "10.0.2.2" "10.0.2.1" "$app6_port" "23"\ "$server_addr_id" "ns2" "ns1" =20 @@ -892,7 +889,8 @@ test_listener() local listener_pid=3D$! =20 sleep 0.5 - verify_listener_events $client_evts $LISTENER_CREATED $AF_INET 10.0.2.2 $= client4_port + verify_listener_events $client_evts $MPTCP_LIB_LISTENER_CREATED \ + $AF_INET 10.0.2.2 $client4_port =20 # ADD_ADDR from client to server machine reusing the subflow port ip netns exec $ns2 ./pm_nl_ctl ann 10.0.2.2 token $client4_token id\ @@ -908,7 +906,8 @@ test_listener() mptcp_lib_kill_wait $listener_pid =20 sleep 0.5 - verify_listener_events $client_evts $LISTENER_CLOSED $AF_INET 10.0.2.2 $c= lient4_port + verify_listener_events $client_evts $MPTCP_LIB_LISTENER_CLOSED \ + $AF_INET 10.0.2.2 $client4_port } =20 print_title "Make connections" --=20 2.40.1 From nobody Wed May 15 05:50:26 2024 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8931E1C696 for ; Mon, 26 Feb 2024 08:18:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935506; cv=none; b=WqQJWYNBrGhd+o9S3P+xxXKuhFSKveI9iNDDOIKV5NE+B1w8IIwrK8m9e0UgcSwEbHzL2oEy/wZX7tLuYBcLmR7pjMw7fINz6D2yiKB0ptNPOR8eMgu6URqFzLFy7BOSJnOrwCIzYiJO+6yZp4tLCbE+xXlo5drJDt0Ol4cBuDs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935506; c=relaxed/simple; bh=257GqoYqIY/PbBdIU+NPNvRukS1j33Jlo8DxZLT8lK8=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=kI6vQ9AYVsmRBqXfOJszC7liUG9Hfedk1RH2qBGelN5O96Op7Inl2/kthP0CxK4Bk2BvCCn3rFR7VtbV7p+s2A3tM93NeW5uztWrmFBI9Uegk4nXlp1c3QVRbzxbeJHA0RJDOH1i/Pbe11DfTCdxWv0HyODKfazw2H06D9YLDNA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Kaj2I0n3; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Kaj2I0n3" Received: by smtp.kernel.org (Postfix) with ESMTPSA id E4AD7C433C7; Mon, 26 Feb 2024 08:18:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708935506; bh=257GqoYqIY/PbBdIU+NPNvRukS1j33Jlo8DxZLT8lK8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Kaj2I0n35CklrjjY9D8cjA49QTzk/duzX6WfQKEZ4t4YjllNJA4+VTJMkFnkS7hwJ Pmu0JK42Otf0yC33l9UyDVlwI6CMaHaN3a0rGH1UQsTBXllfso783G8CMRs3shqIUj yMK8mFu2zApXi5rpT1gZ8Ap86+WFNILdvWfNpKqZof0sbW87XSGv6pqOlRlUrLB9QL 34rQlxXkqfb8ybuw5wSYkAIGsegWcKqoLEmbFPcSdf8lb/gEACV+OFxPZGPdrnehLe hKJjnVPMiovLU5M1oa4lwgD49kGCexb63t8Arx+GLzRe1m1UoC+NU7o4XXjAygyrKl plGsCL7Tdw/yA== From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v4 12/13] selftests: mptcp: add mptcp_lib_verify_listener_events Date: Mon, 26 Feb 2024 16:17:57 +0800 Message-Id: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geliang Tang To avoid duplicated code in different MPTCP selftests, we can add and use helpers defined in mptcp_lib.sh. The helper verify_listener_events() is defined both in mptcp_join.sh and userspace_pm.sh, export it into mptcp_lib.sh and rename it with mptcp_lib_ prefix. Use this new helper in both scripts. Signed-off-by: Geliang Tang --- .../testing/selftests/net/mptcp/mptcp_join.sh | 25 +++------------ .../testing/selftests/net/mptcp/mptcp_lib.sh | 25 +++++++++++++++ .../selftests/net/mptcp/userspace_pm.sh | 31 +++++-------------- 3 files changed, 38 insertions(+), 43 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testin= g/selftests/net/mptcp/mptcp_join.sh index e37ba5d46d9d..6861bfcc7ddf 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -2790,16 +2790,12 @@ backup_tests() =20 verify_listener_events() { - local evt=3D$1 local e_type=3D$2 local e_family=3D$3 local e_saddr=3D$4 local e_sport=3D$5 - local type - local family - local saddr - local sport local name + local rc=3D0 =20 if [ $e_type =3D $MPTCP_LIB_LISTENER_CREATED ]; then name=3D"LISTENER_CREATED" @@ -2816,23 +2812,12 @@ verify_listener_events() return fi =20 - type=3D$(mptcp_lib_evts_get_info type "$evt" "$e_type") - family=3D$(mptcp_lib_evts_get_info family "$evt" "$e_type") - sport=3D$(mptcp_lib_evts_get_info sport "$evt" "$e_type") - if [ $family ] && [ $family =3D $AF_INET6 ]; then - saddr=3D$(mptcp_lib_evts_get_info saddr6 "$evt" "$e_type") - else - saddr=3D$(mptcp_lib_evts_get_info saddr4 "$evt" "$e_type") - fi - - if [ $type ] && [ $type =3D $e_type ] && - [ $family ] && [ $family =3D $e_family ] && - [ $saddr ] && [ $saddr =3D $e_saddr ] && - [ $sport ] && [ $sport =3D $e_sport ]; then - print_ok + mptcp_lib_verify_listener_events "${@}" || rc=3D"${?}" + if [ "${rc}" -eq 0 ] + then return 0 fi - fail_test "$e_type:$type $e_family:$family $e_saddr:$saddr $e_sport:$spor= t" + fail_test "$e_type $e_family $e_saddr $e_sport" } =20 add_addr_ports_tests() diff --git a/tools/testing/selftests/net/mptcp/mptcp_lib.sh b/tools/testing= /selftests/net/mptcp/mptcp_lib.sh index b75b7aedcd1c..0767da4b9436 100644 --- a/tools/testing/selftests/net/mptcp/mptcp_lib.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_lib.sh @@ -479,3 +479,28 @@ mptcp_lib_check_expected() { =20 return "${rc}" } + +mptcp_lib_verify_listener_events() { + local evt=3D$1 + local e_type=3D$2 + local e_family=3D$3 + local e_saddr=3D$4 + local e_sport=3D$5 + local type + local family + local saddr + local sport + local rc=3D0 + + type=3D$(mptcp_lib_evts_get_info type "$evt" "$e_type") + family=3D$(mptcp_lib_evts_get_info family "$evt" "$e_type") + if [ "$family" ] && [ "$family" =3D $AF_INET6 ]; then + saddr=3D$(mptcp_lib_evts_get_info saddr6 "$evt" "$e_type") + else + saddr=3D$(mptcp_lib_evts_get_info saddr4 "$evt" "$e_type") + fi + sport=3D$(mptcp_lib_evts_get_info sport "$evt" "$e_type") + + mptcp_lib_check_expected "type" "family" "saddr" "sport" || rc=3D"${?}" + return "${rc}" +} diff --git a/tools/testing/selftests/net/mptcp/userspace_pm.sh b/tools/test= ing/selftests/net/mptcp/userspace_pm.sh index 6d358b7e47e9..6fe2a4e1704f 100755 --- a/tools/testing/selftests/net/mptcp/userspace_pm.sh +++ b/tools/testing/selftests/net/mptcp/userspace_pm.sh @@ -842,32 +842,15 @@ test_prio() =20 verify_listener_events() { - local evt=3D$1 - local e_type=3D$2 - local e_family=3D$3 - local e_saddr=3D$4 - local e_sport=3D$5 - local type - local family - local saddr - local sport - - if [ $e_type =3D $LISTENER_CREATED ]; then - print_test "CREATE_LISTENER $e_saddr:$e_sport" - elif [ $e_type =3D $LISTENER_CLOSED ]; then - print_test "CLOSE_LISTENER $e_saddr:$e_sport" - fi + local rc=3D0 =20 - type=3D$(mptcp_lib_evts_get_info type $evt $e_type) - family=3D$(mptcp_lib_evts_get_info family $evt $e_type) - sport=3D$(mptcp_lib_evts_get_info sport $evt $e_type) - if [ $family ] && [ $family =3D $AF_INET6 ]; then - saddr=3D$(mptcp_lib_evts_get_info saddr6 $evt $e_type) + mptcp_lib_verify_listener_events "${@}" || rc=3D"${?}" + if [ "${rc}" -eq 0 ] + then + mptcp_lib_result_pass "${test_name}" else - saddr=3D$(mptcp_lib_evts_get_info saddr4 $evt $e_type) + test_fail fi - - check_expected "type" "family" "saddr" "sport" } =20 test_listener() @@ -883,6 +866,7 @@ test_listener() # Capture events on the network namespace running the client :>$client_evts =20 + print_test "Listener event LISTENER_CREATED 10.0.2.2:$client4_port" # Attempt to add a listener at 10.0.2.2: ip netns exec $ns2 ./pm_nl_ctl listen 10.0.2.2\ $client4_port & @@ -902,6 +886,7 @@ test_listener() rport $client4_port token $server4_token sleep 0.5 =20 + print_test "Listener event LISTENER_CLOSED 10.0.2.2:$client4_port" # Delete the listener from the client ns, if one was created mptcp_lib_kill_wait $listener_pid =20 --=20 2.40.1 From nobody Wed May 15 05:50:26 2024 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1A96F1C696 for ; Mon, 26 Feb 2024 08:18:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935508; cv=none; b=sOQ/iL1kG+fzVEcJC3TMS+LRLt/xQeU2JdJXx1GXIKQE2iZ3h0/idUqRZC24EajwSJp6E+dHx+9DFV4QUJDzmZQH74nn/awD+iIftADiKrQhEHGQ/wZCmw6mJ2ieX3fMRIhmsKlpo5LtVPhE5A0Ve8Jpv6be225k1Iegx9r/WcY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708935508; c=relaxed/simple; bh=Di9UbydRrcDP0EKeh5eDndBG/k6QOL+ad3bXVvAAbss=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=ko+CAcFolnBO+j1MChXpTqwOB+ZjRkixXeTcrWX05Lm5SwmmVSKIIPN5UGgLJ9pXix0uidEWeQyrJl3pirpf4oxxiPFZykUJ4KLtS5aOBQ9CB2GSgYjHvRuwrSyY8fCPepz03hjIZBbDU1U1wD78Mzc65pxMCK9wYiZA2OSe0CE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=bx4bUP7b; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="bx4bUP7b" Received: by smtp.kernel.org (Postfix) with ESMTPSA id BD5F6C43390; Mon, 26 Feb 2024 08:18:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708935507; bh=Di9UbydRrcDP0EKeh5eDndBG/k6QOL+ad3bXVvAAbss=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=bx4bUP7bOfdPcATMs+gl6Dq7BwSVyPZWW79FEXbp6bzCwFm1tcDZLZxy97+dspzV7 soafLJOZchBpcWcVDqKFTUKBM4EknKTexjuerDbjFljXzmrJ9S59vTbIDMQYX4Q+Up n0PdiyjZZExh7DncJwb/DVhsLGdnkXP+caQosRXP15to1Nvc502yY2hXaZ02EZjZGR CMk5tDSFkVJtXhkSjLdCPKcI0YAcGIlk4+TLryVtDxooYwmdwxCBzasXt4MCDB6Xf4 LE1iYYuT3eleyAzrCrAqLngs5k1JXw1qVYDdpcEFvzps+wOB5C+SfeOFY1mLDHGUlj HxWsgQHqVxCfg== From: Geliang Tang To: mptcp@lists.linux.dev Cc: Geliang Tang Subject: [PATCH mptcp-next v4 13/13] selftests: mptcp: use KSFT_SKIP/KSFT_PASS/KSFT_FAIL Date: Mon, 26 Feb 2024 16:17:58 +0800 Message-Id: <30f47153371ef19d5f832b3b2df4e6bf70955c1d.1708935196.git.tanggeliang@kylinos.cn> X-Mailer: git-send-email 2.40.1 In-Reply-To: References: Precedence: bulk X-Mailing-List: mptcp@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geliang Tang This patch uses the public var KSFT_SKIP in mptcp_lib.sh instead of ksft_skip, and drop 'ksft_skip=3D4' in mptcp_join.sh. Use KSFT_PASS and KSFT_FAIL macros instead of 0 and 1 after 'exit ' and 'ret=3D' in all scripts: exit 0 -> exit ${KSFT_PASS} exit 1 -> exit ${KSFT_FAIL} ret=3D0 -> ret=3D${KSFT_PASS} ret=3D1 -> ret=3D${KSFT_FAIL} Signed-off-by: Geliang Tang --- .../selftests/net/mptcp/mptcp_connect.sh | 18 +++++++++--------- .../testing/selftests/net/mptcp/mptcp_join.sh | 13 ++++++------- .../selftests/net/mptcp/mptcp_sockopt.sh | 4 ++-- .../testing/selftests/net/mptcp/pm_netlink.sh | 4 ++-- .../selftests/net/mptcp/simult_flows.sh | 4 ++-- .../selftests/net/mptcp/userspace_pm.sh | 4 ++-- 6 files changed, 23 insertions(+), 24 deletions(-) diff --git a/tools/testing/selftests/net/mptcp/mptcp_connect.sh b/tools/tes= ting/selftests/net/mptcp/mptcp_connect.sh index 00bbe451e50d..f54d80a1d0e4 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_connect.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_connect.sh @@ -65,14 +65,14 @@ while getopts "$optstring" option;do case "$option" in "h") usage $0 - exit 0 + exit ${KSFT_PASS} ;; "d") if [ $OPTARG -ge 0 ];then tc_delay=3D"$OPTARG" else echo "-d requires numeric argument, got \"$OPTARG\"" 1>&2 - exit 1 + exit ${KSFT_FAIL} fi ;; "e") @@ -96,7 +96,7 @@ while getopts "$optstring" option;do sndbuf=3D"$OPTARG" else echo "-S requires numeric argument, got \"$OPTARG\"" 1>&2 - exit 1 + exit ${KSFT_FAIL} fi ;; "R") @@ -104,7 +104,7 @@ while getopts "$optstring" option;do rcvbuf=3D"$OPTARG" else echo "-R requires numeric argument, got \"$OPTARG\"" 1>&2 - exit 1 + exit ${KSFT_FAIL} fi ;; "m") @@ -121,7 +121,7 @@ while getopts "$optstring" option;do ;; "?") usage $0 - exit 1 + exit ${KSFT_FAIL} ;; esac done @@ -260,7 +260,7 @@ check_mptcp_disabled() "net.mptcp.enabled sysctl is not 1 by default" mptcp_lib_print_err "\t\t\t\t [FAIL]" mptcp_lib_result_fail "net.mptcp.enabled sysctl is not 1 by default" - ret=3D1 + ret=3D${KSFT_FAIL} return 1 fi ip netns exec ${disabled_ns} sysctl -q net.mptcp.enabled=3D0 @@ -275,7 +275,7 @@ check_mptcp_disabled() "New MPTCP socket cannot be blocked via sysctl" mptcp_lib_print_err "\t\t\t\t [FAIL]" mptcp_lib_result_fail "New MPTCP socket cannot be blocked via sysctl" - ret=3D1 + ret=3D${KSFT_FAIL} return 1 fi =20 @@ -303,7 +303,7 @@ do_ping() =20 if [ $rc -ne 0 ] ; then echo "$listener_ns -> $connect_addr connectivity [FAIL]" 1>&2 - ret=3D1 + ret=3D${KSFT_FAIL} =20 return 1 fi @@ -823,7 +823,7 @@ log_if_error() echo "FAIL: ${msg}" 1>&2 =20 final_ret=3D${ret} - ret=3D0 + ret=3D${KSFT_PASS} =20 return ${final_ret} fi diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testin= g/selftests/net/mptcp/mptcp_join.sh index 6861bfcc7ddf..8ae54f2ff37f 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -25,7 +25,6 @@ err=3D"" capout=3D"" ns1=3D"" ns2=3D"" -ksft_skip=3D4 iptables=3D"iptables" ip6tables=3D"ip6tables" timeout_poll=3D30 @@ -397,15 +396,15 @@ setup_fail_rules() -p tcp \ -m length --length 150:9999 \ -m statistic --mode nth --packet 1 --every 99999 \ - -j MARK --set-mark 42 || return ${ksft_skip} + -j MARK --set-mark 42 || return ${KSFT_SKIP} =20 - tc -n $ns2 qdisc add dev ns2eth$i clsact || return ${ksft_skip} + tc -n $ns2 qdisc add dev ns2eth$i clsact || return ${KSFT_SKIP} tc -n $ns2 filter add dev ns2eth$i egress \ protocol ip prio 1000 \ handle 42 fw \ action pedit munge offset 148 u8 invert \ pipe csum tcp \ - index 100 || return ${ksft_skip} + index 100 || return ${KSFT_SKIP} } =20 reset_with_fail() @@ -419,7 +418,7 @@ reset_with_fail() local rc=3D0 setup_fail_rules "${@}" || rc=3D$? =20 - if [ ${rc} -eq ${ksft_skip} ]; then + if [ ${rc} -eq ${KSFT_SKIP} ]; then mark_as_skipped "unable to set the 'fail' rules" return 1 fi @@ -455,7 +454,7 @@ reset_with_tcp_filter() # $1: err msg fail_test() { - ret=3D1 + ret=3D${KSFT_FAIL} =20 print_fail "${@}" =20 @@ -3638,7 +3637,7 @@ usage() { if [ -n "${1}" ]; then echo "${1}" - ret=3D1 + ret=3D${KSFT_FAIL} fi =20 echo "mptcp_join usage:" diff --git a/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh b/tools/tes= ting/selftests/net/mptcp/mptcp_sockopt.sh index a2a5049f22bb..59ae6c649904 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_sockopt.sh @@ -106,7 +106,7 @@ check_mark() for v in $values; do if [ $v -ne 0 ]; then echo "FAIL: got $tables $values in ns $ns , not 0 - not all expected pa= ckets marked" 1>&2 - ret=3D1 + ret=3D${KSFT_FAIL} return 1 fi done @@ -175,7 +175,7 @@ do_transfer() mptcp_lib_print_err "[FAIL]" mptcp_lib_result_fail "transfer ${ip}" =20 - ret=3D1 + ret=3D${KSFT_FAIL} return 1 fi mptcp_lib_print_ok "[ OK ]" diff --git a/tools/testing/selftests/net/mptcp/pm_netlink.sh b/tools/testin= g/selftests/net/mptcp/pm_netlink.sh index 87ed60ed4112..82dbdec930e6 100755 --- a/tools/testing/selftests/net/mptcp/pm_netlink.sh +++ b/tools/testing/selftests/net/mptcp/pm_netlink.sh @@ -21,11 +21,11 @@ while getopts "$optstring" option;do case "$option" in "h") usage $0 - exit 0 + exit ${KSFT_PASS} ;; "?") usage $0 - exit 1 + exit ${KSFT_FAIL} ;; esac done diff --git a/tools/testing/selftests/net/mptcp/simult_flows.sh b/tools/test= ing/selftests/net/mptcp/simult_flows.sh index eb2eaa48035f..ff255e4a2ed3 100755 --- a/tools/testing/selftests/net/mptcp/simult_flows.sh +++ b/tools/testing/selftests/net/mptcp/simult_flows.sh @@ -262,7 +262,7 @@ while getopts "bcdh" option;do case "$option" in "h") usage $0 - exit 0 + exit ${KSFT_PASS} ;; "b") bail=3D1 @@ -275,7 +275,7 @@ while getopts "bcdh" option;do ;; "?") usage $0 - exit 1 + exit ${KSFT_FAIL} ;; esac done diff --git a/tools/testing/selftests/net/mptcp/userspace_pm.sh b/tools/test= ing/selftests/net/mptcp/userspace_pm.sh index 6fe2a4e1704f..1124ebab3ace 100755 --- a/tools/testing/selftests/net/mptcp/userspace_pm.sh +++ b/tools/testing/selftests/net/mptcp/userspace_pm.sh @@ -79,7 +79,7 @@ test_skip() test_fail() { mptcp_lib_print_err "[FAIL]${1:+ ${*}}" - ret=3D1 + ret=3D${KSFT_FAIL} =20 if [ -n "${1}" ]; then _printf "\t%s\n" "${1}" @@ -204,7 +204,7 @@ make_connection() else test_fail "Expected tokens (c:${client_token} - s:${server_token}) and s= erver (c:${client_serverside} - s:${server_serverside})" mptcp_lib_result_print_all_tap - exit 1 + exit ${KSFT_FAIL} fi =20 if [ "$is_v6" =3D "v6" ] --=20 2.40.1