This series extends the iou-zcrx selftests to be multithreaded while preserving existing single-threaded tests.
Patches 1 and 2 are prep fixes/cleanups. Patch 3 refactors the server's global state. Patches 4 and 5 add the multithreaded client and server. Finally, patch 6 adds the python side multithreaded test case. Changes since v6: - moving listen() after workers have registered their zcrx ifqs (Sashiko, Paolo, Bobby) - worker verifies its own connections received the fully payload (to deal with the 0 connection per worker case passing (Sashiko, Paolo) v6: https://lore.kernel.org/all/[email protected]/ v5: https://lore.kernel.org/all/[email protected]/ v4: https://lore.kernel.org/netdev/[email protected]/ v3: https://lore.kernel.org/netdev/[email protected]/ v2: https://lore.kernel.org/netdev/[email protected]/ v1: https://lore.kernel.org/netdev/[email protected]/ Assisted-by: Claude:claude-opus-4-8 Signed-off-by: Juanlu Herrero <[email protected]> --- 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 tools/testing/selftests/drivers/net/hw/Makefile | 7 +- tools/testing/selftests/drivers/net/hw/iou-zcrx.c | 422 +++++++++++++++------ tools/testing/selftests/drivers/net/hw/iou-zcrx.py | 50 ++- 3 files changed, 347 insertions(+), 132 deletions(-) --- base-commit: 548b86839f7fb819a4d6c83b71c73ec378d24275 change-id: 20260817-iou-zcrx-e8e46108a0bc Best regards, -- Juanlu Herrero

