Message ID | d17f1677d7c0b65309c98f48a8b88e909c0558a0.1697031190.git.geliang.tang@suse.com (mailing list archive) |
---|---|
State | Superseded, archived |
Delegated to: | Matthieu Baerts |
Headers | show |
Series | userspace pm remove id 0 subflow & address | expand |
Context | Check | Description |
---|---|---|
matttbe/build | success | Build and static analysis OK |
matttbe/checkpatch | warning | total: 0 errors, 1 warnings, 0 checks, 31 lines checked |
matttbe/KVM_Validation__normal__except_selftest_mptcp_join_ | success | Success! ✅ |
matttbe/KVM_Validation__debug__except_selftest_mptcp_join_ | success | Success! ✅ |
matttbe/KVM_Validation__normal__only_selftest_mptcp_join_ | success | Success! ✅ |
matttbe/KVM_Validation__debug__only_selftest_mptcp_join_ | warning | Unstable: 1 failed test(s): selftest_mptcp_join |
Hi Geliang, Thank you for your modifications, that's great! Our CI did some validations and here is its report: - {"code":404,"message": - "Can't find artifacts containing file conclusion.txt"}: - Task: https://cirrus-ci.com/task/6688622972239872 - Summary: https://api.cirrus-ci.com/v1/artifact/task/6688622972239872/summary/summary.txt - KVM Validation: debug (except selftest_mptcp_join): - Success! ✅: - Task: https://cirrus-ci.com/task/6432463807840256 - Summary: https://api.cirrus-ci.com/v1/artifact/task/6432463807840256/summary/summary.txt - KVM Validation: normal (only selftest_mptcp_join): - Success! ✅: - Task: https://cirrus-ci.com/task/5306563900997632 - Summary: https://api.cirrus-ci.com/v1/artifact/task/5306563900997632/summary/summary.txt - KVM Validation: debug (only selftest_mptcp_join): - Unstable: 1 failed test(s): selftest_mptcp_join
Hi Geliang, Thank you for your modifications, that's great! Our CI did some validations and here is its report: - KVM Validation: normal (except selftest_mptcp_join): - Success! ✅: - Task: https://cirrus-ci.com/task/5994835887259648 - Summary: https://api.cirrus-ci.com/v1/artifact/task/5994835887259648/summary/summary.txt - KVM Validation: debug (except selftest_mptcp_join): - Success! ✅: - Task: https://cirrus-ci.com/task/6432463807840256 - Summary: https://api.cirrus-ci.com/v1/artifact/task/6432463807840256/summary/summary.txt - KVM Validation: normal (only selftest_mptcp_join): - Success! ✅: - Task: https://cirrus-ci.com/task/5306563900997632 - Summary: https://api.cirrus-ci.com/v1/artifact/task/5306563900997632/summary/summary.txt - KVM Validation: debug (only selftest_mptcp_join): - Unstable: 1 failed test(s): selftest_mptcp_join
Hi Geliang, On 11/10/2023 15:35, Geliang Tang wrote: > This patch adds a selftest for userpsace PM to remove id 0 address. > Use userspace_pm_add_addr() helper to add a id 10 address, then use > userspace_pm_rm_addr() helper to remove id 0 address. > > Signed-off-by: Geliang Tang <geliang.tang@suse.com> > --- > .../testing/selftests/net/mptcp/mptcp_join.sh | 25 +++++++++++++++++++ > 1 file changed, 25 insertions(+) > > diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testing/selftests/net/mptcp/mptcp_join.sh > index e1304383057c..2233b24687cf 100755 > --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh > +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh > @@ -3529,6 +3529,31 @@ userspace_tests() > kill_events_pids > wait $tests_pid > fi > + > + # userspace pm send RM_ADDR for ID 0 > + if reset_with_events "userspace pm send RM_ADDR for ID 0" && > + continue_if mptcp_lib_has_file '/proc/sys/net/mptcp/pm_type'; then > + set_userspace_pm $ns1 > + pm_nl_set_limits $ns2 1 1 > + speed=10 \ > + run_tests $ns1 $ns2 10.0.1.1 & > + local tests_pid=$! > + wait_mpj $ns1 > + userspace_pm_add_addr $ns1 10.0.2.1 10 > + chk_join_nr 1 1 1 > + chk_add_nr 1 1 > + chk_mptcp_info subflows 1 subflows 1 > + chk_subflows_total 2 2 > + chk_mptcp_info add_addr_signal 1 add_addr_accepted 1 > + userspace_pm_rm_addr $ns1 0 If this commands forces the server to send a RM_ADDR to the client and the client, using the Netlink PM, reacts as expected by closing the initial subflow ... > + sleep 0.5 (Maybe move this sleep to userspace_pm_rm_addr()? (even if the best is to wait for an event...)) > + chk_rm_nr 1 0 invert > + chk_rst_nr 0 0 invert > + chk_mptcp_info subflows 1 subflows 1 > + chk_subflows_total 2 2 ... should we not have one subflow here? (and one removed subflow with 'chk_rm_nr 1 1 invert') Or maybe the client doesn't react by removing all subflows linked to the address ID that is given in the RM_ADDR? In this case, we have another issue :) (in the Netlink PM). We can create a new ticket if that's easier not to block this series. Or do we have an issue with the counter displaying 2 while it should be 1? Or an issue with patch 3/7 not closing the subflow as expected? Cheers, Matt
diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testing/selftests/net/mptcp/mptcp_join.sh index e1304383057c..2233b24687cf 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh @@ -3529,6 +3529,31 @@ userspace_tests() kill_events_pids wait $tests_pid fi + + # userspace pm send RM_ADDR for ID 0 + if reset_with_events "userspace pm send RM_ADDR for ID 0" && + continue_if mptcp_lib_has_file '/proc/sys/net/mptcp/pm_type'; then + set_userspace_pm $ns1 + pm_nl_set_limits $ns2 1 1 + speed=10 \ + run_tests $ns1 $ns2 10.0.1.1 & + local tests_pid=$! + wait_mpj $ns1 + userspace_pm_add_addr $ns1 10.0.2.1 10 + chk_join_nr 1 1 1 + chk_add_nr 1 1 + chk_mptcp_info subflows 1 subflows 1 + chk_subflows_total 2 2 + chk_mptcp_info add_addr_signal 1 add_addr_accepted 1 + userspace_pm_rm_addr $ns1 0 + sleep 0.5 + chk_rm_nr 1 0 invert + chk_rst_nr 0 0 invert + chk_mptcp_info subflows 1 subflows 1 + chk_subflows_total 2 2 + kill_events_pids + wait $tests_pid + fi } endpoint_tests()
This patch adds a selftest for userpsace PM to remove id 0 address. Use userspace_pm_add_addr() helper to add a id 10 address, then use userspace_pm_rm_addr() helper to remove id 0 address. Signed-off-by: Geliang Tang <geliang.tang@suse.com> --- .../testing/selftests/net/mptcp/mptcp_join.sh | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+)