examples/fips_validation: fix CMAC test
authorMarko Kovacevic <marko.kovacevic@intel.com>
Mon, 15 Apr 2019 15:04:48 +0000 (16:04 +0100)
committerAkhil Goyal <akhil.goyal@nxp.com>
Thu, 18 Apr 2019 14:01:28 +0000 (16:01 +0200)
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: stable@dpdk.org
Signed-off-by: Marko Kovacevic <marko.kovacevic@intel.com>
examples/fips_validation/main.c

index 5e3d5ba..aef4505 100644 (file)
@@ -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;