On 12/18/24 19:15, Petr Machata wrote:
Alongside the helper ip_link_set_up(), one to set the link down will be useful as well. Add a helper to determine the link state as well, ip_link_is_up(), and use it to short-circuit any changes if the state is already the desired one.
Furthermore, add a helper bridge_vlan_add().
Signed-off-by: Petr Machata petrm@nvidia.com Reviewed-by: Ido Schimmel idosch@nvidia.com
CC: Shuah Khan shuah@kernel.org CC: linux-kselftest@vger.kernel.org
tools/testing/selftests/net/lib.sh | 31 ++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-)
diff --git a/tools/testing/selftests/net/lib.sh b/tools/testing/selftests/net/lib.sh index 2cd5c743b2d9..0bd9a038a1f0 100644 --- a/tools/testing/selftests/net/lib.sh +++ b/tools/testing/selftests/net/lib.sh @@ -477,12 +477,33 @@ ip_link_set_addr() defer ip link set dev "$name" address "$old_addr" } +ip_link_is_up() +{
- local name=$1; shift
- local state=$(ip -j link show "$name" |
jq -r '(.[].flags[] | select(. == "UP")) // "DOWN"')
- [[ $state == "UP" ]]
+}
ip_link_set_up() { local name=$1; shift
- ip link set dev "$name" up
- defer ip link set dev "$name" down
- if ! ip_link_is_up "$name"; then
ip link set dev "$name" up
defer ip link set dev "$name" down
- fi
+}
+ip_link_set_down() +{
- local name=$1; shift
- if ip_link_is_up "$name"; then
ip link set dev "$name" down
defer ip link set dev "$name" up
- fi
} ip_addr_add() @@ -498,3 +519,9 @@ ip_route_add() ip route add "$@" defer ip route del "$@" }
+bridge_vlan_add() +{
- bridge vlan add "$@"
- defer bridge vlan del "$@"
+}
Acked-by: Nikolay Aleksandrov razor@blackwall.org