Driver is preparing the shared descriptor of session while
attaching the session to a queue pair.
It should be prepared on session create.

Signed-off-by: Gagandeep Singh <g.si...@nxp.com>
---
 drivers/crypto/dpaa_sec/dpaa_sec.c | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/drivers/crypto/dpaa_sec/dpaa_sec.c 
b/drivers/crypto/dpaa_sec/dpaa_sec.c
index 875df0bfc6..05415dbf3b 100644
--- a/drivers/crypto/dpaa_sec/dpaa_sec.c
+++ b/drivers/crypto/dpaa_sec/dpaa_sec.c
@@ -2548,11 +2548,6 @@ dpaa_sec_attach_sess_q(struct dpaa_sec_qp *qp, 
dpaa_sec_session *sess)
        int ret;
 
        sess->qp[rte_lcore_id() % MAX_DPAA_CORES] = qp;
-       ret = dpaa_sec_prep_cdb(sess);
-       if (ret) {
-               DPAA_SEC_ERR("Unable to prepare sec cdb");
-               return ret;
-       }
        if (unlikely(!DPAA_PER_LCORE_PORTAL)) {
                ret = rte_dpaa_portal_init((void *)0);
                if (ret) {
@@ -2706,6 +2701,11 @@ dpaa_sec_sym_session_configure(struct rte_cryptodev *dev,
        set_sym_session_private_data(sess, dev->driver_id,
                        sess_private_data);
 
+       ret = dpaa_sec_prep_cdb(sess_private_data);
+       if (ret) {
+               DPAA_SEC_ERR("Unable to prepare sec cdb");
+               return ret;
+       }
 
        return 0;
 }
@@ -3304,6 +3304,12 @@ dpaa_sec_security_session_create(void *dev,
 
        set_sec_session_private_data(sess, sess_private_data);
 
+       ret = dpaa_sec_prep_cdb(sess_private_data);
+       if (ret) {
+               DPAA_SEC_ERR("Unable to prepare sec cdb");
+               return ret;
+       }
+
        return ret;
 }
 
-- 
2.25.1

Reply via email to