selftests: mptcp: reuse linkfail to make given size files

This patch reused the test_linkfail values above 2 to make test files with
the given sizes (KB) for both the client side and the server side. It's
useful for the test cases using different file sizes.

Signed-off-by: Geliang Tang <geliang.tang@suse.com>
Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Geliang Tang 2022-03-04 11:36:32 -08:00 committed by Jakub Kicinski
parent cbfafac4cf
commit 34b572b76f

View File

@ -459,7 +459,7 @@ do_transfer()
local_addr="0.0.0.0"
fi
if [ "$test_link_fail" -eq 2 ];then
if [ "$test_link_fail" -gt 1 ];then
timeout ${timeout_test} \
ip netns exec ${listener_ns} \
./mptcp_connect -t ${timeout_poll} -l -p $port -s ${srv_proto} \
@ -479,13 +479,19 @@ do_transfer()
ip netns exec ${connector_ns} \
./mptcp_connect -t ${timeout_poll} -p $port -s ${cl_proto} \
$extra_args $connect_addr < "$cin" > "$cout" &
else
elif [ "$test_link_fail" -eq 1 ] || [ "$test_link_fail" -eq 2 ];then
( cat "$cinfail" ; sleep 2; link_failure $listener_ns ; cat "$cinfail" ) | \
tee "$cinsent" | \
timeout ${timeout_test} \
ip netns exec ${connector_ns} \
./mptcp_connect -t ${timeout_poll} -p $port -s ${cl_proto} \
$extra_args $connect_addr > "$cout" &
else
cat "$cinfail" | tee "$cinsent" | \
timeout ${timeout_test} \
ip netns exec ${connector_ns} \
./mptcp_connect -t ${timeout_poll} -p $port -s ${cl_proto} \
$extra_args $connect_addr > "$cout" &
fi
cpid=$!
@ -645,7 +651,7 @@ do_transfer()
return 1
fi
if [ "$test_link_fail" -eq 2 ];then
if [ "$test_link_fail" -gt 1 ];then
check_transfer $sinfail $cout "file received by client"
else
check_transfer $sin $cout "file received by client"
@ -690,9 +696,18 @@ run_tests()
speed="${7:-fast}"
sflags="${8:-""}"
# The values above 2 are reused to make test files
# with the given sizes (KB)
if [ "$test_linkfail" -gt 2 ]; then
size=$test_linkfail
if [ -z "$cinfail" ]; then
cinfail=$(mktemp)
fi
make_file "$cinfail" "client" $size
# create the input file for the failure test when
# the first failure test run
if [ "$test_linkfail" -ne 0 -a -z "$cinfail" ]; then
elif [ "$test_linkfail" -ne 0 -a -z "$cinfail" ]; then
# the client file must be considerably larger
# of the maximum expected cwin value, or the
# link utilization will be not predicable
@ -705,7 +720,14 @@ run_tests()
make_file "$cinfail" "client" $size
fi
if [ "$test_linkfail" -eq 2 -a -z "$sinfail" ]; then
if [ "$test_linkfail" -gt 2 ]; then
size=$test_linkfail
if [ -z "$sinfail" ]; then
sinfail=$(mktemp)
fi
make_file "$sinfail" "server" $size
elif [ "$test_linkfail" -eq 2 -a -z "$sinfail" ]; then
size=$((RANDOM%16))
size=$((size+1))
size=$((size*2048))