As a result of the cmac test running the test where
PT len is 65536 it should give a result back to the
user USER1: Error -1: Prepare op USER1: PT len 65536
as this MSG len is not supported. Issue was
that the application was not freeing the op properly after
a while causing the app to fail.

CRYPTODEV: rte_cryptodev_sym_session_create() line 1340:
couldn't get object from session mempool
USER1: Error -12: test block
USER1: Error -12: Failed test CMAC/req/CMAC.req

Fixes: cd255ccf5764 ("examples/fips_validation: support AES parsing")
Cc: marko.kovace...@intel.com
Cc: sta...@dpdk.org

Signed-off-by: Marko Kovacevic <marko.kovace...@intel.com>
---
 examples/fips_validation/main.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/examples/fips_validation/main.c b/examples/fips_validation/main.c
index 5e3d5baa8..aef45055e 100644
--- a/examples/fips_validation/main.c
+++ b/examples/fips_validation/main.c
@@ -949,19 +949,20 @@ fips_run_test(void)
        if (ret < 0) {
                RTE_LOG(ERR, USER1, "Error %i: Init session\n",
                                ret);
-               return ret;
+               goto exit;
        }
 
        ret = test_ops.prepare_op();
        if (ret < 0) {
                RTE_LOG(ERR, USER1, "Error %i: Prepare op\n",
                                ret);
-               return ret;
+               goto exit;
        }
 
        if (rte_cryptodev_enqueue_burst(env.dev_id, 0, &env.op, 1) < 1) {
                RTE_LOG(ERR, USER1, "Error: Failed enqueue\n");
-               return ret;
+               ret = -1;
+               goto exit;
        }
 
        do {
@@ -973,6 +974,7 @@ fips_run_test(void)
 
        vec.status = env.op->status;
 
+exit:
        rte_cryptodev_sym_session_clear(env.dev_id, env.sess);
        rte_cryptodev_sym_session_free(env.sess);
        env.sess = NULL;
-- 
2.13.6

Reply via email to