aboutsummaryrefslogtreecommitdiffstats
path: root/tools/testing/selftests/bpf/xdpxceiver.c
diff options
context:
space:
mode:
authorMagnus Karlsson <magnus.karlsson@intel.com>2021-02-23 16:23:01 +0000
committerAlexei Starovoitov <ast@kernel.org>2021-02-26 12:08:48 -0800
commitecde60614d5ed60fde1c80b38b71582a3ea2e662 (patch)
tree5eb3a48bcb94852c0ad67c178c1db36112b53e51 /tools/testing/selftests/bpf/xdpxceiver.c
parentbpf: Rename fixup_bpf_calls and add some comments (diff)
downloadlinux-dev-ecde60614d5ed60fde1c80b38b71582a3ea2e662.tar.xz
linux-dev-ecde60614d5ed60fde1c80b38b71582a3ea2e662.zip
selftest/bpf: Make xsk tests less verbose
Make the xsk tests less verbose by only printing the essentials. Currently, it is hard to see if the tests passed or not due to all the printouts. Move the extra printouts to a verbose option, if further debugging is needed when a problem arises. To run the xsk tests with verbose output: ./test_xsk.sh -v Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com> Signed-off-by: Ciara Loftus <ciara.loftus@intel.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Acked-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com> Link: https://lore.kernel.org/bpf/20210223162304.7450-2-ciara.loftus@intel.com
Diffstat (limited to 'tools/testing/selftests/bpf/xdpxceiver.c')
-rw-r--r--tools/testing/selftests/bpf/xdpxceiver.c31
1 files changed, 18 insertions, 13 deletions
diff --git a/tools/testing/selftests/bpf/xdpxceiver.c b/tools/testing/selftests/bpf/xdpxceiver.c
index f4a96d5ff524..8af746c9a6b6 100644
--- a/tools/testing/selftests/bpf/xdpxceiver.c
+++ b/tools/testing/selftests/bpf/xdpxceiver.c
@@ -341,6 +341,7 @@ static struct option long_options[] = {
{"tear-down", no_argument, 0, 'T'},
{"bidi", optional_argument, 0, 'B'},
{"debug", optional_argument, 0, 'D'},
+ {"verbose", no_argument, 0, 'v'},
{"tx-pkt-count", optional_argument, 0, 'C'},
{0, 0, 0, 0}
};
@@ -359,6 +360,7 @@ static void usage(const char *prog)
" -T, --tear-down Tear down sockets by repeatedly recreating them\n"
" -B, --bidi Bi-directional sockets test\n"
" -D, --debug Debug mode - dump packets L2 - L5\n"
+ " -v, --verbose Verbose output\n"
" -C, --tx-pkt-count=n Number of packets to send\n";
ksft_print_msg(str, prog);
}
@@ -392,7 +394,7 @@ static void *nsswitchthread(void *args)
ksft_test_result_fail("ERROR: [%s] interface \"%s\" does not exist\n",
__func__, ifdict[targs->idx]->ifname);
} else {
- ksft_print_msg("Interface found: %s\n", ifdict[targs->idx]->ifname);
+ print_verbose("Interface found: %s\n", ifdict[targs->idx]->ifname);
targs->retptr = true;
}
}
@@ -422,7 +424,7 @@ static int validate_interfaces(void)
pthread_join(ns_thread, NULL);
if (targs->retptr)
- ksft_print_msg("NS switched: %s\n", ifdict[i]->nsname);
+ print_verbose("NS switched: %s\n", ifdict[i]->nsname);
free(targs);
} else {
@@ -432,7 +434,7 @@ static int validate_interfaces(void)
("ERROR: interface \"%s\" does not exist\n", ifdict[i]->ifname);
ret = false;
} else {
- ksft_print_msg("Interface found: %s\n", ifdict[i]->ifname);
+ print_verbose("Interface found: %s\n", ifdict[i]->ifname);
}
}
}
@@ -446,7 +448,7 @@ static void parse_command_line(int argc, char **argv)
opterr = 0;
for (;;) {
- c = getopt_long(argc, argv, "i:q:pSNcTBDC:", long_options, &option_index);
+ c = getopt_long(argc, argv, "i:q:pSNcTBDC:v", long_options, &option_index);
if (c == -1)
break;
@@ -497,6 +499,9 @@ static void parse_command_line(int argc, char **argv)
case 'C':
opt_pkt_count = atoi(optarg);
break;
+ case 'v':
+ opt_verbose = 1;
+ break;
default:
usage(basename(argv[0]));
ksft_exit_xfail();
@@ -714,7 +719,7 @@ static void worker_pkt_dump(void)
int payload = *((uint32_t *)(pkt_buf[iter]->payload + PKT_HDR_SIZE));
if (payload == EOT) {
- ksft_print_msg("End-of-transmission frame received\n");
+ print_verbose("End-of-transmission frame received\n");
fprintf(stdout, "---------------------------------------\n");
break;
}
@@ -746,7 +751,7 @@ static void worker_pkt_validate(void)
}
if (payloadseqnum == EOT) {
- ksft_print_msg("End-of-transmission frame received: PASS\n");
+ print_verbose("End-of-transmission frame received: PASS\n");
sigvar = 1;
break;
}
@@ -836,7 +841,7 @@ static void *worker_testapp_validate(void *arg)
usleep(USLEEP_MAX);
}
- ksft_print_msg("Interface [%s] vector [Tx]\n", ifobject->ifname);
+ print_verbose("Interface [%s] vector [Tx]\n", ifobject->ifname);
for (int i = 0; i < num_frames; i++) {
/*send EOT frame */
if (i == (num_frames - 1))
@@ -850,7 +855,7 @@ static void *worker_testapp_validate(void *arg)
gen_eth_frame(ifobject->umem, i * XSK_UMEM__DEFAULT_FRAME_SIZE);
}
- ksft_print_msg("Sending %d packets on interface %s\n",
+ print_verbose("Sending %d packets on interface %s\n",
(opt_pkt_count - 1), ifobject->ifname);
tx_only_all(ifobject);
} else if (ifobject->fv.vector == rx) {
@@ -860,7 +865,7 @@ static void *worker_testapp_validate(void *arg)
if (!bidi_pass)
thread_common_ops(ifobject, bufs, &sync_mutex_tx, &spinning_rx);
- ksft_print_msg("Interface [%s] vector [Rx]\n", ifobject->ifname);
+ print_verbose("Interface [%s] vector [Rx]\n", ifobject->ifname);
xsk_populate_fill_ring(ifobject->umem);
TAILQ_INIT(&head);
@@ -890,11 +895,11 @@ static void *worker_testapp_validate(void *arg)
break;
}
- ksft_print_msg("Received %d packets on interface %s\n",
+ print_verbose("Received %d packets on interface %s\n",
pkt_counter, ifobject->ifname);
if (opt_teardown)
- ksft_print_msg("Destroying socket\n");
+ print_verbose("Destroying socket\n");
}
if (!opt_bidi || bidi_pass) {
@@ -914,7 +919,7 @@ static void testapp_validate(void)
if (opt_bidi && bidi_pass) {
pthread_init_mutex();
if (!switching_notify) {
- ksft_print_msg("Switching Tx/Rx vectors\n");
+ print_verbose("Switching Tx/Rx vectors\n");
switching_notify++;
}
}
@@ -974,7 +979,7 @@ static void testapp_sockets(void)
pkt_counter = 0;
prev_pkt = -1;
sigvar = 0;
- ksft_print_msg("Creating socket\n");
+ print_verbose("Creating socket\n");
testapp_validate();
opt_bidi ? bidi_pass++ : bidi_pass;
}