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 v4: - In patch 4, make cfg_num_threads the default value and remove CONNS_PER_THREAD and associated ternary (David) - Use reverse christmas tree for variables (Paolo, David) - Address race condition identified by Sashiko (Paolo) - use thread barriers to get rid of epoll in the main thread (David) - Make napi id matcher helper take a connfd as a param and return the index directly (David) 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]/ 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 | 406 ++++++++++++------ .../selftests/drivers/net/hw/iou-zcrx.py | 50 ++- 3 files changed, 332 insertions(+), 131 deletions(-) base-commit: 3da8c3c8b8fa99505624b65ef590482f48e766b6 -- 2.53.0-Meta

