Skip to content

Commit

Permalink
selftests: net: lib: remove ns from list after clean-up
Browse files Browse the repository at this point in the history
Instead of only appending items to the list, removing them when the
netns has been deleted.

By doing that, we can make sure 'cleanup_all_ns()' is not trying to
remove already deleted netns.

Reviewed-by: Geliang Tang <geliang@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Link: https://lore.kernel.org/r/20240607-upstream-net-next-20240607-selftests-mptcp-net-lib-v1-2-e36986faac94@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  • Loading branch information
Matthieu Baerts (NGI0) authored and Jakub Kicinski committed Jun 12, 2024
1 parent 7e0620b commit 92fe567
Showing 1 changed file with 17 additions and 4 deletions.
21 changes: 17 additions & 4 deletions tools/testing/selftests/net/lib.sh
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,20 @@ slowwait_for_counter()
slowwait "$timeout" until_counter_is ">= $((base + delta))" "$@"
}

remove_ns_list()
{
local item=$1
local ns
local ns_list=("${NS_LIST[@]}")
NS_LIST=()

for ns in "${ns_list[@]}"; do
if [ "${ns}" != "${item}" ]; then
NS_LIST+=("${ns}")
fi
done
}

cleanup_ns()
{
local ns=""
Expand All @@ -136,6 +150,8 @@ cleanup_ns()
if ! busywait $BUSYWAIT_TIMEOUT ip netns list \| grep -vq "^$ns$" &> /dev/null; then
echo "Warn: Failed to remove namespace $ns"
ret=1
else
remove_ns_list "${ns}"
fi
done

Expand All @@ -154,17 +170,14 @@ setup_ns()
local ns=""
local ns_name=""
local ns_list=()
local ns_exist=
for ns_name in "$@"; do
# Some test may setup/remove same netns multi times
if unset ${ns_name} 2> /dev/null; then
ns="${ns_name,,}-$(mktemp -u XXXXXX)"
eval readonly ${ns_name}="$ns"
ns_exist=false
else
eval ns='$'${ns_name}
cleanup_ns "$ns"
ns_exist=true
fi

if ! ip netns add "$ns"; then
Expand All @@ -173,7 +186,7 @@ setup_ns()
return $ksft_skip
fi
ip -n "$ns" link set lo up
! $ns_exist && ns_list+=("$ns")
ns_list+=("$ns")
done
NS_LIST+=("${ns_list[@]}")
}
Expand Down

0 comments on commit 92fe567

Please sign in to comment.