mirror of
https://github.com/torvalds/linux.git
synced 2026-05-25 15:41:52 +02:00
selftests: mptcp: check subflow errors in close events
This validates the previous commit: subflow closed events should contain
an error field when a subflow got closed with an error, e.g. reset or
timeout.
For this test, the chk_evt_nr helper has been extended to check
attributes in the matched events.
In this test, the 2 subflow closed events should have an error.
The 'Fixes' tag here below is the same as the one from the previous
commit: this patch here is not fixing anything wrong in the selftests,
but it validates the previous fix for an issue introduced by this commit
ID.
Fixes: 15cc104533 ("mptcp: deliver ssk errors to msk")
Cc: stable@vger.kernel.org
Reviewed-by: Geliang Tang <geliang@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Link: https://patch.msgid.link/20260127-net-mptcp-dup-nl-events-v1-4-7f71e1bc4feb@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
dccf46179d
commit
2ef9e3a384
|
|
@ -3847,21 +3847,28 @@ userspace_pm_chk_get_addr()
|
|||
fi
|
||||
}
|
||||
|
||||
# $1: ns ; $2: event type ; $3: count
|
||||
# $1: ns ; $2: event type ; $3: count ; [ $4: attr ; $5: attr count ]
|
||||
chk_evt_nr()
|
||||
{
|
||||
local ns=${1}
|
||||
local evt_name="${2}"
|
||||
local exp="${3}"
|
||||
local attr="${4}"
|
||||
local attr_exp="${5}"
|
||||
|
||||
local evts="${evts_ns1}"
|
||||
local evt="${!evt_name}"
|
||||
local attr_name
|
||||
local count
|
||||
|
||||
if [ -n "${attr}" ]; then
|
||||
attr_name=", ${attr}: ${attr_exp}"
|
||||
fi
|
||||
|
||||
evt_name="${evt_name:16}" # without MPTCP_LIB_EVENT_
|
||||
[ "${ns}" == "ns2" ] && evts="${evts_ns2}"
|
||||
|
||||
print_check "event ${ns} ${evt_name} (${exp})"
|
||||
print_check "event ${ns} ${evt_name} (${exp}${attr_name})"
|
||||
|
||||
if [[ "${evt_name}" = "LISTENER_"* ]] &&
|
||||
! mptcp_lib_kallsyms_has "mptcp_event_pm_listener$"; then
|
||||
|
|
@ -3873,6 +3880,16 @@ chk_evt_nr()
|
|||
if [ "${count}" != "${exp}" ]; then
|
||||
fail_test "got ${count} events, expected ${exp}"
|
||||
cat "${evts}"
|
||||
return
|
||||
elif [ -z "${attr}" ]; then
|
||||
print_ok
|
||||
return
|
||||
fi
|
||||
|
||||
count=$(grep -w "type:${evt}" "${evts}" | grep -c ",${attr}:")
|
||||
if [ "${count}" != "${attr_exp}" ]; then
|
||||
fail_test "got ${count} event attributes, expected ${attr_exp}"
|
||||
grep -w "type:${evt}" "${evts}"
|
||||
else
|
||||
print_ok
|
||||
fi
|
||||
|
|
@ -4131,7 +4148,7 @@ userspace_tests()
|
|||
chk_subflows_total 1 1
|
||||
userspace_pm_add_sf $ns2 10.0.1.2 0
|
||||
wait_event ns2 MPTCP_LIB_EVENT_SUB_CLOSED 2
|
||||
chk_evt_nr ns2 MPTCP_LIB_EVENT_SUB_CLOSED 2
|
||||
chk_evt_nr ns2 MPTCP_LIB_EVENT_SUB_CLOSED 2 error 2
|
||||
fi
|
||||
kill_events_pids
|
||||
mptcp_lib_kill_group_wait $tests_pid
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user