Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2d73c887 authored by Jiri Pirko's avatar Jiri Pirko Committed by David S. Miller
Browse files

selftests: forwarding: add tests for TC chains creation adn destruction



Add basic sanity tests for TC chains.

Signed-off-by: default avatarJiri Pirko <jiri@mellanox.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 7f333cbf
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -44,6 +44,15 @@ check_tc_shblock_support()
	fi
}

check_tc_chain_support()
{
	tc help 2>&1|grep chain &> /dev/null
	if [[ $? -ne 0 ]]; then
		echo "SKIP: iproute2 too old; tc is missing chain support"
		exit 1
	fi
}

if [[ "$(id -u)" -ne 0 ]]; then
	echo "SKIP: need root privileges"
	exit 0
+22 −1
Original line number Diff line number Diff line
#!/bin/bash
# SPDX-License-Identifier: GPL-2.0

ALL_TESTS="unreachable_chain_test gact_goto_chain_test"
ALL_TESTS="unreachable_chain_test gact_goto_chain_test create_destroy_chain"
NUM_NETIFS=2
source tc_common.sh
source lib.sh
@@ -80,6 +80,25 @@ gact_goto_chain_test()
	log_test "gact goto chain ($tcflags)"
}

create_destroy_chain()
{
	RET=0

	tc chain add dev $h2 ingress
	check_err $? "Failed to create default chain"

	tc chain add dev $h2 ingress chain 1
	check_err $? "Failed to create chain 1"

	tc chain del dev $h2 ingress
	check_err $? "Failed to destroy default chain"

	tc chain del dev $h2 ingress chain 1
	check_err $? "Failed to destroy chain 1"

	log_test "create destroy chain"
}

setup_prepare()
{
	h1=${NETIFS[p1]}
@@ -103,6 +122,8 @@ cleanup()
	vrf_cleanup
}

check_tc_chain_support

trap cleanup EXIT

setup_prepare