selftests: drv-net: iou-zcrx: wait for memory cleanup of probe run

The large chunks test does a probe run of iou-zcrx before it runs the
actual test. After the probe run finishes, the context will still exist
until the deferred io_uring teardown. When running iou-zcrx the second
time, io_uring_register_ifq() can return -EEXIST due to the existence of
the old context.

The fix is simple: wait for the context teardown using the new
mp_clear_wait() utility before running the second instance of iou-zcrx.

Signed-off-by: Dragos Tatulea <dtatulea@nvidia.com>
Link: https://patch.msgid.link/20260305080446.897628-2-dtatulea@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Dragos Tatulea
2026-03-05 10:04:45 +02:00
committed by Jakub Kicinski
parent 1a9940317c
commit 507ccb668f

View File

@@ -151,6 +151,7 @@ def test_zcrx_large_chunks(cfg) -> None:
if probe.ret == SKIP_CODE:
raise KsftSkipEx(probe.stdout.strip())
mp_clear_wait(cfg)
with bkg(rx_cmd, exit_wait=True):
wait_port_listen(cfg.port, proto="tcp")
cmd(tx_cmd, host=cfg.remote)