aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/performance/odp_crypto.c29
1 files changed, 24 insertions, 5 deletions
diff --git a/test/performance/odp_crypto.c b/test/performance/odp_crypto.c
index 404984dde..b7818ea97 100644
--- a/test/performance/odp_crypto.c
+++ b/test/performance/odp_crypto.c
@@ -545,9 +545,11 @@ run_measure_one(crypto_args_t *cargs,
* every time.
* Note we leaked one packet here.
*/
- pkt = odp_packet_alloc(pkt_pool,
- payload_length);
- if (pkt == ODP_PACKET_INVALID) {
+ odp_packet_t newpkt;
+
+ newpkt = odp_packet_alloc(pkt_pool,
+ payload_length);
+ if (newpkt == ODP_PACKET_INVALID) {
app_err("failed to allocate buffer\n");
return -1;
} else {
@@ -555,8 +557,8 @@ run_measure_one(crypto_args_t *cargs,
memset(mem, 1, payload_length);
}
- params.pkt = pkt;
- params.out_pkt = cargs->in_place ? pkt :
+ params.pkt = newpkt;
+ params.out_pkt = cargs->in_place ? newpkt :
ODP_PACKET_INVALID;
}
@@ -650,6 +652,8 @@ run_measure_one(crypto_args_t *cargs,
cargs->iteration_count;
}
+ odp_packet_free(pkt);
+
return rc;
}
@@ -821,6 +825,21 @@ int main(int argc, char *argv[])
}
}
+ if (odp_pool_destroy(pool)) {
+ app_err("Error: pool destroy\n");
+ exit(EXIT_FAILURE);
+ }
+
+ if (odp_term_local()) {
+ app_err("Error: term local\n");
+ exit(EXIT_FAILURE);
+ }
+
+ if (odp_term_global(instance)) {
+ app_err("Error: term global\n");
+ exit(EXIT_FAILURE);
+ }
+
return 0;
}