[PATCH net-next v3 0/6] selftests: net: multithreaded multiqueue iou-zcrx
From: Juanlu Herrero <hidden>
Date: 2026-07-22 20:39:59
This series extends the iou-zcrx zero-copy receive selftest to be multithreaded while preserving existing single-threaded tests. The first two patches are preparatory fixes/cleanups. Patch 3 is a refactor of the server's global state. Patches 4 and 5 add the multithreaded client and server. Patch 6 adds the python-side multithreaded test case. Changes since v2: - Moved the per-queue NAPI ID query from the Python test into the C binary, using the netdev netlink queue-get interface; the -n option that passed the NAPI IDs to the binary is dropped. - Server startup now uses a per-worker eventfd handshake so each worker registers its zcrx queue before the main thread queries NAPI IDs and dispatches connections (with checked read()/write() return values). - Minor checkpatch style fixes. v2: https://lore.kernel.org/netdev/20260418094907.3cde57ca@kernel.org/ (local) v1: https://lore.kernel.org/netdev/20260408163816.2760-1-juanlu@fastmail.com/ (local) Juanlu Herrero (6): selftests: net: fix get_refill_ring_size() to use its local variable selftests: net: remove unused variable in process_recvzc() selftests: net: refactor server state into struct thread_ctx selftests: net: add multithread client support to iou-zcrx selftests: net: add multithread server support to iou-zcrx selftests: net: add rss_multiqueue test variant to iou-zcrx .../testing/selftests/drivers/net/hw/Makefile | 10 +- .../selftests/drivers/net/hw/iou-zcrx.c | 444 +++++++++++++----- .../selftests/drivers/net/hw/iou-zcrx.py | 48 +- 3 files changed, 375 insertions(+), 127 deletions(-) base-commit: 6deab902b4c06abadeb5242db1488a17fd614e2b -- 2.53.0-Meta