selftests: userspace pm: avoid relaunching pm events
authorMatthieu Baerts (NGI0) <matttbe@kernel.org>
Wed, 6 Mar 2024 09:43:01 +0000 (10:43 +0100)
committerJakub Kicinski <kuba@kernel.org>
Fri, 8 Mar 2024 05:06:53 +0000 (21:06 -0800)
'make_connection' is launched twice: once for IPv4, once for IPv6.

But then, the "pm_nl_ctl events" was launched a first time, killed, then
relaunched after for no particular reason.

We can then move this code, and the generation of the temp file to
exchange, to the init part, and remove extra conditions that no longer
needed.

Reviewed-by: Mat Martineau <martineau@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Link: https://lore.kernel.org/r/20240306-upstream-net-next-20240304-selftests-mptcp-shared-code-shellcheck-v2-12-bc79e6e5e6a0@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/net/mptcp/userspace_pm.sh

index 3200d0b96d53ceac9ae0b0013636b46b75569274..b0cce8f065d82fdddaaa9e97a3cfa7f8e9ba9509 100755 (executable)
@@ -149,17 +149,23 @@ ip -net "$ns2" addr add dead:beef:1::2/64 dev ns2eth1 nodad
 ip -net "$ns2" addr add dead:beef:2::2/64 dev ns2eth1 nodad
 ip -net "$ns2" link set ns2eth1 up
 
+file=$(mktemp)
+mptcp_lib_make_file "$file" 2 1
+
+# Capture netlink events over the two network namespaces running
+# the MPTCP client and server
+client_evts=$(mktemp)
+mptcp_lib_events "${ns2}" "${client_evts}" client_evts_pid
+server_evts=$(mktemp)
+mptcp_lib_events "${ns1}" "${server_evts}" server_evts_pid
+sleep 0.5
+
 print_title "Init"
 print_test "Created network namespaces ns1, ns2"
 test_pass
 
 make_connection()
 {
-       if [ -z "$file" ]; then
-               file=$(mktemp)
-       fi
-       mptcp_lib_make_file "$file" 2 1
-
        local is_v6=$1
        local app_port=$app4_port
        local connect_addr="10.0.1.1"
@@ -173,17 +179,8 @@ make_connection()
                is_v6="v4"
        fi
 
-       # Capture netlink events over the two network namespaces running
-       # the MPTCP client and server
-       if [ -z "$client_evts" ]; then
-               client_evts=$(mktemp)
-       fi
-       mptcp_lib_events "${ns2}" "${client_evts}" client_evts_pid
-       if [ -z "$server_evts" ]; then
-               server_evts=$(mktemp)
-       fi
-       mptcp_lib_events "${ns1}" "${server_evts}" server_evts_pid
-       sleep 0.5
+       :>"$client_evts"
+       :>"$server_evts"
 
        # Run the server
        ip netns exec "$ns1" \