mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-09 07:23:14 +00:00
selftests: mptcp: join: check CURRESTAB counters
This patch adds a new helper chk_cestab_nr() to check the current established connections counter MIB_CURRESTAB. Set the newly added variables cestab_ns1 and cestab_ns2 to indicate how many connections are expected in ns1 or ns2. Invoke check_cestab() to check the counter during the connection in do_transfer() and invoke chk_cestab_nr() to re-check it when the connection closed. These checks are embedded in add_tests(). Signed-off-by: Geliang Tang <geliang.tang@linux.dev> Acked-by: Paolo Abeni <pabeni@redhat.com> Reviewed-by: Matthieu Baerts <matttbe@kernel.org> Signed-off-by: Matthieu Baerts <matttbe@kernel.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
c693a85164
commit
0bd962dd86
@ -56,6 +56,8 @@ unset FAILING_LINKS
|
|||||||
unset test_linkfail
|
unset test_linkfail
|
||||||
unset addr_nr_ns1
|
unset addr_nr_ns1
|
||||||
unset addr_nr_ns2
|
unset addr_nr_ns2
|
||||||
|
unset cestab_ns1
|
||||||
|
unset cestab_ns2
|
||||||
unset sflags
|
unset sflags
|
||||||
unset fastclose
|
unset fastclose
|
||||||
unset fullmesh
|
unset fullmesh
|
||||||
@ -976,6 +978,34 @@ pm_nl_set_endpoint()
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
chk_cestab_nr()
|
||||||
|
{
|
||||||
|
local ns=$1
|
||||||
|
local cestab=$2
|
||||||
|
local count
|
||||||
|
|
||||||
|
print_check "cestab $cestab"
|
||||||
|
count=$(mptcp_lib_get_counter ${ns} "MPTcpExtMPCurrEstab")
|
||||||
|
if [ -z "$count" ]; then
|
||||||
|
print_skip
|
||||||
|
elif [ "$count" != "$cestab" ]; then
|
||||||
|
fail_test "got $count current establish[s] expected $cestab"
|
||||||
|
else
|
||||||
|
print_ok
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# $1 namespace 1, $2 namespace 2
|
||||||
|
check_cestab()
|
||||||
|
{
|
||||||
|
if [ -n "${cestab_ns1}" ]; then
|
||||||
|
chk_cestab_nr ${1} ${cestab_ns1}
|
||||||
|
fi
|
||||||
|
if [ -n "${cestab_ns2}" ]; then
|
||||||
|
chk_cestab_nr ${2} ${cestab_ns2}
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
do_transfer()
|
do_transfer()
|
||||||
{
|
{
|
||||||
local listener_ns="$1"
|
local listener_ns="$1"
|
||||||
@ -1089,6 +1119,7 @@ do_transfer()
|
|||||||
local cpid=$!
|
local cpid=$!
|
||||||
|
|
||||||
pm_nl_set_endpoint $listener_ns $connector_ns $connect_addr
|
pm_nl_set_endpoint $listener_ns $connector_ns $connect_addr
|
||||||
|
check_cestab $listener_ns $connector_ns
|
||||||
|
|
||||||
wait $cpid
|
wait $cpid
|
||||||
local retc=$?
|
local retc=$?
|
||||||
@ -2477,47 +2508,52 @@ add_tests()
|
|||||||
if reset "add single subflow"; then
|
if reset "add single subflow"; then
|
||||||
pm_nl_set_limits $ns1 0 1
|
pm_nl_set_limits $ns1 0 1
|
||||||
pm_nl_set_limits $ns2 0 1
|
pm_nl_set_limits $ns2 0 1
|
||||||
addr_nr_ns2=1 speed=slow \
|
addr_nr_ns2=1 speed=slow cestab_ns2=1 \
|
||||||
run_tests $ns1 $ns2 10.0.1.1
|
run_tests $ns1 $ns2 10.0.1.1
|
||||||
chk_join_nr 1 1 1
|
chk_join_nr 1 1 1
|
||||||
|
chk_cestab_nr $ns2 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# add signal address
|
# add signal address
|
||||||
if reset "add signal address"; then
|
if reset "add signal address"; then
|
||||||
pm_nl_set_limits $ns1 0 1
|
pm_nl_set_limits $ns1 0 1
|
||||||
pm_nl_set_limits $ns2 1 1
|
pm_nl_set_limits $ns2 1 1
|
||||||
addr_nr_ns1=1 speed=slow \
|
addr_nr_ns1=1 speed=slow cestab_ns1=1 \
|
||||||
run_tests $ns1 $ns2 10.0.1.1
|
run_tests $ns1 $ns2 10.0.1.1
|
||||||
chk_join_nr 1 1 1
|
chk_join_nr 1 1 1
|
||||||
chk_add_nr 1 1
|
chk_add_nr 1 1
|
||||||
|
chk_cestab_nr $ns1 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# add multiple subflows
|
# add multiple subflows
|
||||||
if reset "add multiple subflows"; then
|
if reset "add multiple subflows"; then
|
||||||
pm_nl_set_limits $ns1 0 2
|
pm_nl_set_limits $ns1 0 2
|
||||||
pm_nl_set_limits $ns2 0 2
|
pm_nl_set_limits $ns2 0 2
|
||||||
addr_nr_ns2=2 speed=slow \
|
addr_nr_ns2=2 speed=slow cestab_ns2=1 \
|
||||||
run_tests $ns1 $ns2 10.0.1.1
|
run_tests $ns1 $ns2 10.0.1.1
|
||||||
chk_join_nr 2 2 2
|
chk_join_nr 2 2 2
|
||||||
|
chk_cestab_nr $ns2 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# add multiple subflows IPv6
|
# add multiple subflows IPv6
|
||||||
if reset "add multiple subflows IPv6"; then
|
if reset "add multiple subflows IPv6"; then
|
||||||
pm_nl_set_limits $ns1 0 2
|
pm_nl_set_limits $ns1 0 2
|
||||||
pm_nl_set_limits $ns2 0 2
|
pm_nl_set_limits $ns2 0 2
|
||||||
addr_nr_ns2=2 speed=slow \
|
addr_nr_ns2=2 speed=slow cestab_ns2=1 \
|
||||||
run_tests $ns1 $ns2 dead:beef:1::1
|
run_tests $ns1 $ns2 dead:beef:1::1
|
||||||
chk_join_nr 2 2 2
|
chk_join_nr 2 2 2
|
||||||
|
chk_cestab_nr $ns2 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# add multiple addresses IPv6
|
# add multiple addresses IPv6
|
||||||
if reset "add multiple addresses IPv6"; then
|
if reset "add multiple addresses IPv6"; then
|
||||||
pm_nl_set_limits $ns1 0 2
|
pm_nl_set_limits $ns1 0 2
|
||||||
pm_nl_set_limits $ns2 2 2
|
pm_nl_set_limits $ns2 2 2
|
||||||
addr_nr_ns1=2 speed=slow \
|
addr_nr_ns1=2 speed=slow cestab_ns1=1 \
|
||||||
run_tests $ns1 $ns2 dead:beef:1::1
|
run_tests $ns1 $ns2 dead:beef:1::1
|
||||||
chk_join_nr 2 2 2
|
chk_join_nr 2 2 2
|
||||||
chk_add_nr 2 2
|
chk_add_nr 2 2
|
||||||
|
chk_cestab_nr $ns1 0
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user