[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20221130094142.545051-1-tirthendu.sarkar@intel.com>
Date: Wed, 30 Nov 2022 15:11:42 +0530
From: Tirthendu Sarkar <tirthendu.sarkar@...el.com>
To: bjorn@...nel.org, magnus.karlsson@...el.com,
maciej.fijalkowski@...el.com, jonathan.lemon@...il.com,
ast@...nel.org, daniel@...earbox.net
Cc: netdev@...r.kernel.org, bpf@...r.kernel.org
Subject: [PATCH bpf-next] selftests: xsk: changes for setting up NICs to run xsk self-tests
ETH devies need to be set up for running xsk self-tests, like enable
loopback, set promiscuous mode, MTU etc. This patch adds those settings
before running xsk self-tests and reverts them back once done.
Signed-off-by: Tirthendu Sarkar <tirthendu.sarkar@...el.com>
---
tools/testing/selftests/bpf/test_xsk.sh | 27 ++++++++++++++++++++++++-
1 file changed, 26 insertions(+), 1 deletion(-)
diff --git a/tools/testing/selftests/bpf/test_xsk.sh b/tools/testing/selftests/bpf/test_xsk.sh
index d821fd098504..e7a5c5fc4f71 100755
--- a/tools/testing/selftests/bpf/test_xsk.sh
+++ b/tools/testing/selftests/bpf/test_xsk.sh
@@ -106,7 +106,11 @@ MTU=1500
trap ctrl_c INT
function ctrl_c() {
- cleanup_exit ${VETH0} ${VETH1} ${NS1}
+ if [ ! -z $ETH ]; then
+ cleanup_exit ${VETH0} ${VETH1} ${NS1}
+ else
+ cleanup_eth
+ fi
exit 1
}
@@ -138,9 +142,28 @@ setup_vethPairs() {
ip link set ${VETH0} up
}
+setup_eth() {
+ sudo ethtool -L ${ETH} combined 1
+ sudo ethtool -K ${ETH} loopback on
+ sudo ip link set ${ETH} promisc on
+ sudo ip link set ${ETH} mtu ${MTU}
+ sudo ip link set ${ETH} up
+ IPV6_DISABLE_CMD="sudo sysctl -n net.ipv6.conf.${ETH}.disable_ipv6"
+ IPV6_DISABLE=`$IPV6_DISABLE_CMD 2> /dev/null`
+ [[ $IPV6_DISABLE == "0" ]] && $IPV6_DISABLE_CMD=1
+ sleep 1
+}
+
+cleanup_eth() {
+ [[ $IPV6_DISABLE == "0" ]] && $IPV6_DISABLE_CMD=0
+ sudo ethtool -K ${ETH} loopback off
+ sudo ip link set ${ETH} promisc off
+}
+
if [ ! -z $ETH ]; then
VETH0=${ETH}
VETH1=${ETH}
+ setup_eth
NS1=""
else
validate_root_exec
@@ -191,6 +214,8 @@ exec_xskxceiver
if [ -z $ETH ]; then
cleanup_exit ${VETH0} ${VETH1} ${NS1}
+else
+ cleanup_eth
fi
failures=0
--
2.34.1
Powered by blists - more mailing lists