mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-29 05:55:02 +08:00
selftests/xsk: print correct error codes when exiting
Print the correct error codes when exiting the test suite due to some
terminal error. Some of these had a switched sign and some of them
printed zero instead of errno.
Fixes: facb7cb2e9
("selftests/bpf: Xsk selftests - SKB POLL, NOPOLL")
Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com>
Acked-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Link: https://lore.kernel.org/r/20230111093526.11682-5-magnus.karlsson@gmail.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
This commit is contained in:
parent
1e04f23bcc
commit
085dcccfb7
@ -350,7 +350,7 @@ static bool ifobj_zc_avail(struct ifobject *ifobject)
|
||||
umem = calloc(1, sizeof(struct xsk_umem_info));
|
||||
if (!umem) {
|
||||
munmap(bufs, umem_sz);
|
||||
exit_with_error(-ENOMEM);
|
||||
exit_with_error(ENOMEM);
|
||||
}
|
||||
umem->frame_size = XSK_UMEM__DEFAULT_FRAME_SIZE;
|
||||
ret = xsk_configure_umem(umem, bufs, umem_sz);
|
||||
@ -936,7 +936,7 @@ static int receive_pkts(struct test_spec *test, struct pollfd *fds)
|
||||
if (ifobj->use_poll) {
|
||||
ret = poll(fds, 1, POLL_TMOUT);
|
||||
if (ret < 0)
|
||||
exit_with_error(-ret);
|
||||
exit_with_error(errno);
|
||||
|
||||
if (!ret) {
|
||||
if (!is_umem_valid(test->ifobj_tx))
|
||||
@ -963,7 +963,7 @@ static int receive_pkts(struct test_spec *test, struct pollfd *fds)
|
||||
if (xsk_ring_prod__needs_wakeup(&umem->fq)) {
|
||||
ret = poll(fds, 1, POLL_TMOUT);
|
||||
if (ret < 0)
|
||||
exit_with_error(-ret);
|
||||
exit_with_error(errno);
|
||||
}
|
||||
ret = xsk_ring_prod__reserve(&umem->fq, rcvd, &idx_fq);
|
||||
}
|
||||
@ -1015,7 +1015,7 @@ static int __send_pkts(struct ifobject *ifobject, u32 *pkt_nb, struct pollfd *fd
|
||||
if (timeout) {
|
||||
if (ret < 0) {
|
||||
ksft_print_msg("ERROR: [%s] Poll error %d\n",
|
||||
__func__, ret);
|
||||
__func__, errno);
|
||||
return TEST_FAILURE;
|
||||
}
|
||||
if (ret == 0)
|
||||
@ -1024,7 +1024,7 @@ static int __send_pkts(struct ifobject *ifobject, u32 *pkt_nb, struct pollfd *fd
|
||||
}
|
||||
if (ret <= 0) {
|
||||
ksft_print_msg("ERROR: [%s] Poll error %d\n",
|
||||
__func__, ret);
|
||||
__func__, errno);
|
||||
return TEST_FAILURE;
|
||||
}
|
||||
}
|
||||
@ -1323,18 +1323,18 @@ static void thread_common_ops(struct test_spec *test, struct ifobject *ifobject)
|
||||
if (ifobject->xdp_flags & XDP_FLAGS_SKB_MODE) {
|
||||
if (opts.attach_mode != XDP_ATTACHED_SKB) {
|
||||
ksft_print_msg("ERROR: [%s] XDP prog not in SKB mode\n");
|
||||
exit_with_error(-EINVAL);
|
||||
exit_with_error(EINVAL);
|
||||
}
|
||||
} else if (ifobject->xdp_flags & XDP_FLAGS_DRV_MODE) {
|
||||
if (opts.attach_mode != XDP_ATTACHED_DRV) {
|
||||
ksft_print_msg("ERROR: [%s] XDP prog not in DRV mode\n");
|
||||
exit_with_error(-EINVAL);
|
||||
exit_with_error(EINVAL);
|
||||
}
|
||||
}
|
||||
|
||||
ret = xsk_socket__update_xskmap(ifobject->xsk->xsk, ifobject->xsk_map_fd);
|
||||
if (ret)
|
||||
exit_with_error(-ret);
|
||||
exit_with_error(errno);
|
||||
}
|
||||
|
||||
static void *worker_testapp_validate_tx(void *arg)
|
||||
@ -1541,7 +1541,7 @@ static void swap_xsk_resources(struct ifobject *ifobj_tx, struct ifobject *ifobj
|
||||
|
||||
ret = xsk_socket__update_xskmap(ifobj_rx->xsk->xsk, ifobj_rx->xsk_map_fd);
|
||||
if (ret)
|
||||
exit_with_error(-ret);
|
||||
exit_with_error(errno);
|
||||
}
|
||||
|
||||
static void testapp_bpf_res(struct test_spec *test)
|
||||
|
Loading…
Reference in New Issue
Block a user