[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210727131753.10924-14-magnus.karlsson@gmail.com>
Date: Tue, 27 Jul 2021 15:17:49 +0200
From: Magnus Karlsson <magnus.karlsson@...il.com>
To: magnus.karlsson@...el.com, bjorn@...nel.org, ast@...nel.org,
daniel@...earbox.net, netdev@...r.kernel.org,
maciej.fijalkowski@...el.com
Cc: jonathan.lemon@...il.com, ciara.loftus@...el.com,
joamaki@...il.com, bpf@...r.kernel.org, yhs@...com,
andrii@...nel.org
Subject: [PATCH bpf-next 13/17] selftests: xsk: remove cleanup at end of program
From: Magnus Karlsson <magnus.karlsson@...el.com>
Remove the cleanup right before the program/process exits as this will
trigger the cleanup without us having to write or maintain any
code. The application is not a library, so let us benefit from that.
Signed-off-by: Magnus Karlsson <magnus.karlsson@...el.com>
---
tools/testing/selftests/bpf/xdpxceiver.c | 29 +++++-------------------
1 file changed, 6 insertions(+), 23 deletions(-)
diff --git a/tools/testing/selftests/bpf/xdpxceiver.c b/tools/testing/selftests/bpf/xdpxceiver.c
index 327129f83fef..8cc66c3ce94a 100644
--- a/tools/testing/selftests/bpf/xdpxceiver.c
+++ b/tools/testing/selftests/bpf/xdpxceiver.c
@@ -1045,25 +1045,21 @@ static void run_pkt_test(int mode, int type)
int main(int argc, char **argv)
{
- bool failure = false;
int i, j;
- for (int i = 0; i < MAX_INTERFACES; i++) {
+ for (i = 0; i < MAX_INTERFACES; i++) {
ifdict[i] = malloc(sizeof(struct ifobject));
if (!ifdict[i])
exit_with_error(errno);
ifdict[i]->ifdict_index = i;
ifdict[i]->xsk_arr = calloc(2, sizeof(struct xsk_socket_info *));
- if (!ifdict[i]->xsk_arr) {
- failure = true;
- goto cleanup;
- }
+ if (!ifdict[i]->xsk_arr)
+ exit_with_error(errno);
+
ifdict[i]->umem_arr = calloc(2, sizeof(struct xsk_umem_info *));
- if (!ifdict[i]->umem_arr) {
- failure = true;
- goto cleanup;
- }
+ if (!ifdict[i]->umem_arr)
+ exit_with_error(errno);
}
setlocale(LC_ALL, "");
@@ -1082,19 +1078,6 @@ int main(int argc, char **argv)
}
}
-cleanup:
- for (int i = 0; i < MAX_INTERFACES; i++) {
- if (ifdict[i]->ns_fd != -1)
- close(ifdict[i]->ns_fd);
- free(ifdict[i]->xsk_arr);
- free(ifdict[i]->umem_arr);
- free(ifdict[i]);
- }
-
- if (failure)
- exit_with_error(errno);
-
ksft_exit_pass();
-
return 0;
}
--
2.29.0
Powered by blists - more mailing lists