[PATCH net-next v4 0/6] selftests: net: multithreaded multiqueue iou-zcrx
From: Juanlu Herrero <hidden>
Date: 2026-07-29 22:18:54
Extend the iou-zcrx selftest to exercise multi-queue zero-copy receive. The server can now run as N worker threads (-t <n>), each owning a receive queue, io_uring and zcrx ifq, with each connection dispatched to the worker owning the queue it landed on. A new rss_multiqueue variant drives traffic across a multi-queue RSS context; the earlier patches are prep fixes and a refactor. Changes since v3: - size the io_uring CQ to the zcrx area buffer count; the default could overflow and abort a recv with -ENOSPC under multishot load - Makefile conditional/list cleanup (Jakub) - drop the anonymous scope blocks in run_server() (Jakub) - docstrings for the new Python helpers (Jakub) v3: https://lore.kernel.org/netdev/20260722203950.58550-1-juanlu@fastmail.com/ (local) v2: https://lore.kernel.org/netdev/cover.1776444379.git.juanlu@fastmail.com/ (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 | 7 +- .../selftests/drivers/net/hw/iou-zcrx.c | 437 +++++++++++++----- .../selftests/drivers/net/hw/iou-zcrx.py | 50 +- 3 files changed, 366 insertions(+), 128 deletions(-) base-commit: 2bb54b49e9d522f54dc9c0fe10ba40fbc56041c8 -- 2.53.0-Meta