Commit f477b0fd authored by Bastien Curutchet (eBPF Foundation)'s avatar Bastien Curutchet (eBPF Foundation) Committed by Alexei Starovoitov
Browse files

selftests/bpf: test_xsk: Release resources when swap fails



testapp_validate_traffic() doesn't release the sockets and the umem
created by the threads if the test isn't currently in its last step.
Thus, if the swap_xsk_resources() fails before the last step, the
created resources aren't cleaned up.

Clean the sockets and the umem in case of swap_xsk_resources() failure.

Reviewed-by: default avatarMaciej Fijalkowski <maciej.fijalkowski@intel.com>
Signed-off-by: default avatarBastien Curutchet (eBPF Foundation) <bastien.curutchet@bootlin.com>
Link: https://lore.kernel.org/r/20251031-xsk-v7-7-39fe486593a3@bootlin.com


Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
parent e3dfa0fa
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -1866,8 +1866,13 @@ int testapp_xdp_prog_cleanup(struct test_spec *test)
	if (testapp_validate_traffic(test))
		return TEST_FAILURE;

	if (swap_xsk_resources(test))
	if (swap_xsk_resources(test)) {
		clean_sockets(test, test->ifobj_rx);
		clean_sockets(test, test->ifobj_tx);
		clean_umem(test, test->ifobj_rx, test->ifobj_tx);
		return TEST_FAILURE;
	}

	return testapp_validate_traffic(test);
}