summaryrefslogtreecommitdiff
path: root/tools/testing/selftests/net/gro.sh
diff options
context:
space:
mode:
Diffstat (limited to 'tools/testing/selftests/net/gro.sh')
-rwxr-xr-xtools/testing/selftests/net/gro.sh43
1 files changed, 7 insertions, 36 deletions
diff --git a/tools/testing/selftests/net/gro.sh b/tools/testing/selftests/net/gro.sh
index 794d2bf36dd7..342ad27f631b 100755
--- a/tools/testing/selftests/net/gro.sh
+++ b/tools/testing/selftests/net/gro.sh
@@ -1,45 +1,14 @@
#!/bin/bash
# SPDX-License-Identifier: GPL-2.0
-source setup_loopback.sh
readonly SERVER_MAC="aa:00:00:00:00:02"
readonly CLIENT_MAC="aa:00:00:00:00:01"
readonly TESTS=("data" "ack" "flags" "tcp" "ip" "large")
readonly PROTOS=("ipv4" "ipv6")
-dev="eth0"
+dev=""
test="all"
proto="ipv4"
-setup_interrupt() {
- # Use timer on host to trigger the network stack
- # Also disable device interrupt to not depend on NIC interrupt
- # Reduce test flakiness caused by unexpected interrupts
- echo 100000 >"${FLUSH_PATH}"
- echo 50 >"${IRQ_PATH}"
-}
-
-setup_ns() {
- # Set up server_ns namespace and client_ns namespace
- setup_macvlan_ns "${dev}" server_ns server "${SERVER_MAC}"
- setup_macvlan_ns "${dev}" client_ns client "${CLIENT_MAC}"
-}
-
-cleanup_ns() {
- cleanup_macvlan_ns server_ns server client_ns client
-}
-
-setup() {
- setup_loopback_environment "${dev}"
- setup_interrupt
-}
-
-cleanup() {
- cleanup_loopback "${dev}"
-
- echo "${FLUSH_TIMEOUT}" >"${FLUSH_PATH}"
- echo "${HARD_IRQS}" >"${IRQ_PATH}"
-}
-
run_test() {
local server_pid=0
local exit_code=0
@@ -115,10 +84,12 @@ while getopts "i:t:p:" opt; do
esac
done
-readonly FLUSH_PATH="/sys/class/net/${dev}/gro_flush_timeout"
-readonly IRQ_PATH="/sys/class/net/${dev}/napi_defer_hard_irqs"
-readonly FLUSH_TIMEOUT="$(< ${FLUSH_PATH})"
-readonly HARD_IRQS="$(< ${IRQ_PATH})"
+if [ -n "$dev" ]; then
+ source setup_loopback.sh
+else
+ source setup_veth.sh
+fi
+
setup
trap cleanup EXIT
if [[ "${test}" == "all" ]]; then