summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xtools/testing/selftests/drivers/net/hw/ethtool_rmon.sh30
1 files changed, 17 insertions, 13 deletions
diff --git a/tools/testing/selftests/drivers/net/hw/ethtool_rmon.sh b/tools/testing/selftests/drivers/net/hw/ethtool_rmon.sh
index ed81bdc33536..2ec19edddfaa 100755
--- a/tools/testing/selftests/drivers/net/hw/ethtool_rmon.sh
+++ b/tools/testing/selftests/drivers/net/hw/ethtool_rmon.sh
@@ -8,6 +8,7 @@ ALL_TESTS="
rmon_tx_histogram
"
+: "${DRIVER_TEST_CONFORMANT:=yes}"
NUM_NETIFS=2
lib_dir=$(dirname "$0")
source "$lib_dir"/../../../net/forwarding/lib.sh
@@ -27,9 +28,11 @@ ensure_mtu()
local required=$((len - ETH_HLEN - ETH_FCS_LEN))
local current
- current=$(ip -j link show dev "$iface" | jq -r '.[0].mtu')
+ current=$(run_on "$iface" \
+ ip -j link show dev "$iface" | jq -r '.[0].mtu')
if [ "$current" -lt "$required" ]; then
- ip link set dev "$iface" mtu "$required" || return 1
+ run_on "$iface" ip link set dev "$iface" mtu "$required" \
+ || return 1
fi
}
@@ -52,15 +55,17 @@ bucket_test()
len=$((len - ETH_FCS_LEN))
len=$((len > 0 ? len : 0))
- before=$(ethtool --json -S "$iface" --groups rmon | \
+ before=$(run_on "$iface" ethtool --json -S "$iface" --groups rmon | \
jq -r ".[0].rmon[\"${set}-pktsNtoM\"][$bucket].val")
# Send 10k one way and 20k in the other, to detect counters
# mapped to the wrong direction
- "$MZ" "$neigh" -q -c "$num_rx" -p "$len" -a own -b bcast -d 10us
- "$MZ" "$iface" -q -c "$num_tx" -p "$len" -a own -b bcast -d 10us
+ run_on "$neigh" \
+ "$MZ" "$neigh" -q -c "$num_rx" -p "$len" -a own -b bcast -d 10us
+ run_on "$iface" \
+ "$MZ" "$iface" -q -c "$num_tx" -p "$len" -a own -b bcast -d 10us
- after=$(ethtool --json -S "$iface" --groups rmon | \
+ after=$(run_on "$iface" ethtool --json -S "$iface" --groups rmon | \
jq -r ".[0].rmon[\"${set}-pktsNtoM\"][$bucket].val")
delta=$((after - before))
@@ -95,7 +100,7 @@ rmon_histogram()
fi
ktap_test_pass "$TEST_NAME.$step"
nbuckets=$((nbuckets + 1))
- done < <(ethtool --json -S "$iface" --groups rmon | \
+ done < <(run_on "$iface" ethtool --json -S "$iface" --groups rmon | \
jq -r ".[0].rmon[\"${set}-pktsNtoM\"][]|[.low, .high]|@tsv" 2>/dev/null)
if [ "$nbuckets" -eq 0 ]; then
@@ -120,9 +125,8 @@ setup_prepare()
h2=${NETIFS[p2]}
for iface in "$h1" "$h2"; do
- netif_mtu["$iface"]=$(ip -j link show dev "$iface" | \
- jq -r '.[0].mtu')
- ip link set dev "$iface" up
+ netif_mtu["$iface"]=$(run_on "$iface" \
+ ip -j link show dev "$iface" | jq -r '.[0].mtu')
done
}
@@ -130,10 +134,10 @@ cleanup()
{
pre_cleanup
+ # Do not bring down the interfaces, just configure the initial MTU
for iface in "$h2" "$h1"; do
- ip link set dev "$iface" \
- mtu "${netif_mtu[$iface]}" \
- down
+ run_on "$iface" ip link set dev "$iface" \
+ mtu "${netif_mtu[$iface]}"
done
}