2025-09-02, 07:26:02 +0000, Hangbin Liu wrote:
quoted hunk ↗ jump to hunk
diff --git a/tools/testing/selftests/net/vdev_offload.sh b/tools/testing/selftests/net/vdev_offload.sh
new file mode 100755
index 000000000000..78fc212efd4a
--- /dev/null
+++ b/tools/testing/selftests/net/vdev_offload.sh
@@ -0,0 +1,176 @@
+#!/bin/bash
+# SPDX-License-Identifier: GPL-2.0
+
+# shellcheck disable=SC1091
+source lib.sh
+
+# Set related offload on lower deivces and check if upper devices re-compute
nit: s/deivces/devices/
+# Some features are fixed on veth interface. Just list here in case we have a
+# better way to test in future.
+set_offload()
+{
[...]
+check_xfrm()
+{
+ local dev=$1
+ local src=192.0.2.1
+ local dst=192.0.2.2
+ local key="0x3132333435363738393031323334353664636261"
+
+ RET=0
+
+ ip -n "$ns" xfrm state flush
+ ip -n "$ns" xfrm state add proto esp src "$src" dst "$dst" spi 9 \
+ mode transport reqid 42 aead "rfc4106(gcm(aes))" "$key" 128 \
+ sel src "$src"/24 dst "$dst"/24 offload dev "$dev" dir out
It's maybe not something you would expect, but this codepath will not
check that NETIF_F_HW_ESP is set on $dev (you can verify that by
running "ip xfrm state add ... offload ..." on the same bond+netdevsim
combination before/after toggling esp-hw-offload on/off for the
bond). Why not use __check_offload again for this feature?
+ # shellcheck disable=SC2034
+ ip -n "$ns" xfrm state list | grep -q "crypto offload parameters: dev $dev dir" || RET=1
+ log_test "$dev" "xfrm offload"
+}
--
Sabrina