linux/tools/testing/selftests/drivers
Willem de Bruijn 5c6baef388 selftests: drv-net: convert so_txtime to drv-net
In preparation for extending to pacing hardware offload, convert the
so_txtime.sh test to a drv-net test that can be run against netdevsim
and real hardware.

Also update so_txtime.c to not exit on first failure, but run to
completion and report exit code there. This helps with debugging
unexpected results, especially when processing multiple packets,
as happens in the "reverse_order" testcase.

Signed-off-by: Willem de Bruijn <willemb@google.com>

----

v6 -> v7

- update test to use new argument expect_fail
- v6 received Reviewed-by, but dropped due to above (minor) change

v5 -> v6

- fix order in tools/testing/selftests/drivers/net/config

v4 -> v5

- move qdisc setup/restore into each test
- add tc to utils.py (separate patch)
- test expected failure (separate patch)
- fix pylint
- convert fail to pass for timing errors if KSFT_MACHINE_SLOW
  (cmd does not special case KSFT_SKIP process returncode yet)

Responses to sashiko review

- The test converts per packet failure to errors, to continue
  testing other packets, but other error() cases are not in scope.
- The test starts sender and receiver at an absolute future time,
  like the original test. This assumes ~msec scale sync'ed clocks.
- The tc qdisc replace command works fine with noqueue. Tested
  manually.

v3 -> v4

- restore original qdisc after test
- drop unnecessary underscore in tap test names

v2 -> v3

- Makefile: so_txtime from YNL_GEN_FILES to TEST_GEN_FILES (Sashiko, NIPA)

v1 -> v2
- move so_txtime.c for net/lib to drivers/net (Jakub)
- fix drivers/net/config order (Jakub)
- detect passing when failure is expected (Jakub, Sashiko)
- pass pylint --disable=R (Jakub)
- only call ksft_run once (Jakub)
- do not sleep if waiting time is negative (Sashiko)
- add \n when converting error() to fprintf() (Sashiko)
- 4 space indentation, instead of 2 space
- increase sync delay from 100 to 200ms, to fix rare vng flakes

Link: https://patch.msgid.link/20260504174056.565319-4-willemdebruijn.kernel@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
History 2026-05-05 18:15:29 -07:00
..
dma-buf selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
gpu selftests/drivers/gpu: Add error messages to drm_mm.sh 2022-06-28 13:32:29 -06:00
net selftests: drv-net: convert so_txtime to drv-net 2026-05-05 18:15:29 -07:00
ntsync selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
platform/x86/intel/ifs selftests: ifs: verify IFS ARRAY BIST functionality 2024-07-11 11:31:11 -06:00
s390x/uvdevice selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
sdsi selftests: sdsi: test sysfs setup 2022-03-02 14:56:12 +01:00
usb/usbip selftests: usbip: add wait after attach and before checking port status 2018-10-09 16:13:42 +02:00
.gitignore selftests: drivers/s390x: Add uvdevice tests 2022-05-20 16:38:42 +02:00