]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
selftests/bpf: test_xsk: Don't exit immediately when gettimeofday fails
authorBastien Curutchet (eBPF Foundation) <bastien.curutchet@bootlin.com>
Fri, 31 Oct 2025 08:04:46 +0000 (09:04 +0100)
committerAlexei Starovoitov <ast@kernel.org>
Fri, 31 Oct 2025 16:24:38 +0000 (09:24 -0700)
exit_with_error() is called when gettimeofday() fails. This exits the
program immediately. It prevents the following tests from being run and
isn't compliant with the CI.

Return TEST_FAILURE instead of calling exit_on_error().

Reviewed-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Signed-off-by: Bastien Curutchet (eBPF Foundation) <bastien.curutchet@bootlin.com>
Link: https://lore.kernel.org/r/20251031-xsk-v7-10-39fe486593a3@bootlin.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/testing/selftests/bpf/test_xsk.c

index 0adb6c0b948f6216b24d0562bcda26097dbb9dbc..2c955e1099439c377cd28f5a9be2a17e65d49f78 100644 (file)
@@ -1096,7 +1096,7 @@ static int receive_pkts(struct test_spec *test)
 
        ret = gettimeofday(&tv_now, NULL);
        if (ret)
-               exit_with_error(errno);
+               return TEST_FAILURE;
 
        timeradd(&tv_now, &tv_timeout, &tv_end);
 
@@ -1112,7 +1112,7 @@ static int receive_pkts(struct test_spec *test)
 
                ret = gettimeofday(&tv_now, NULL);
                if (ret)
-                       exit_with_error(errno);
+                       return TEST_FAILURE;
 
                if (timercmp(&tv_now, &tv_end, >)) {
                        ksft_print_msg("ERROR: [%s] Receive loop timed out\n", __func__);
@@ -1255,13 +1255,13 @@ static int wait_for_tx_completion(struct xsk_socket_info *xsk)
 
        ret = gettimeofday(&tv_now, NULL);
        if (ret)
-               exit_with_error(errno);
+               return TEST_FAILURE;
        timeradd(&tv_now, &tv_timeout, &tv_end);
 
        while (xsk->outstanding_tx) {
                ret = gettimeofday(&tv_now, NULL);
                if (ret)
-                       exit_with_error(errno);
+                       return TEST_FAILURE;
                if (timercmp(&tv_now, &tv_end, >)) {
                        ksft_print_msg("ERROR: [%s] Transmission loop timed out\n", __func__);
                        return TEST_FAILURE;