[dpdk-stable] patch 'drivers/crypto: fix session-less mode' has been queued to stable release 19.11.1

luca.boccassi at gmail.com luca.boccassi at gmail.com
Mon Feb 17 18:45:09 CET 2020


Hi,

FYI, your patch has been queued to stable release 19.11.1

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 02/19/20. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Thanks.

Luca Boccassi

---
>From 042ea295df9722b4d41d8ddc5658863c6c8057fc Mon Sep 17 00:00:00 2001
From: Junxiao Shi <git at mail1.yoursunny.com>
Date: Mon, 27 Jan 2020 11:32:11 -0700
Subject: [PATCH] drivers/crypto: fix session-less mode

[ upstream commit a0c2b3d8ee501b90eb11c2a82da0aaca19362bd3 ]

When OpenSSL or AESNI-MB cryptodev is being used in sessionless mode
for symmetric crypto operation (e.g. SHA256 hash), the driver prints
error message:

    CRYPTODEV: set_sym_session_private_data() line 489:
               Set private data for driver 0 not allowed

Then, AESNI-MB driver segfaults in post_process_mb_job().

Bugzilla ID: 377
Fixes: b3bbd9e5f2 ("cryptodev: support device independent sessions")
Fixes: c68d7aa354 ("crypto/aesni_mb: use architecture independent macros")

Signed-off-by: Junxiao Shi <git at mail1.yoursunny.com>
---
 drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c | 4 ++--
 drivers/crypto/openssl/rte_openssl_pmd.c   | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c b/drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c
index 97d9f81766..33f4167452 100644
--- a/drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c
+++ b/drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c
@@ -729,10 +729,10 @@ get_session(struct aesni_mb_qp *qp, struct rte_crypto_op *op)
 					op->sym->session,
 					cryptodev_driver_id);
 	} else {
-		void *_sess = NULL;
+		void *_sess = rte_cryptodev_sym_session_create(qp->sess_mp);
 		void *_sess_private_data = NULL;
 
-		if (rte_mempool_get(qp->sess_mp, (void **)&_sess))
+		if (_sess == NULL)
 			return NULL;
 
 		if (rte_mempool_get(qp->sess_mp_priv,
diff --git a/drivers/crypto/openssl/rte_openssl_pmd.c b/drivers/crypto/openssl/rte_openssl_pmd.c
index 91f028308c..199097bf8c 100644
--- a/drivers/crypto/openssl/rte_openssl_pmd.c
+++ b/drivers/crypto/openssl/rte_openssl_pmd.c
@@ -762,10 +762,10 @@ get_session(struct openssl_qp *qp, struct rte_crypto_op *op)
 			return NULL;
 
 		/* provide internal session */
-		void *_sess = NULL;
+		void *_sess = rte_cryptodev_sym_session_create(qp->sess_mp);
 		void *_sess_private_data = NULL;
 
-		if (rte_mempool_get(qp->sess_mp, (void **)&_sess))
+		if (_sess == NULL)
 			return NULL;
 
 		if (rte_mempool_get(qp->sess_mp_priv,
-- 
2.20.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-02-17 17:00:15.798058152 +0000
+++ 0017-drivers-crypto-fix-session-less-mode.patch	2020-02-17 17:00:15.287950172 +0000
@@ -1,8 +1,10 @@
-From a0c2b3d8ee501b90eb11c2a82da0aaca19362bd3 Mon Sep 17 00:00:00 2001
+From 042ea295df9722b4d41d8ddc5658863c6c8057fc Mon Sep 17 00:00:00 2001
 From: Junxiao Shi <git at mail1.yoursunny.com>
 Date: Mon, 27 Jan 2020 11:32:11 -0700
 Subject: [PATCH] drivers/crypto: fix session-less mode
 
+[ upstream commit a0c2b3d8ee501b90eb11c2a82da0aaca19362bd3 ]
+
 When OpenSSL or AESNI-MB cryptodev is being used in sessionless mode
 for symmetric crypto operation (e.g. SHA256 hash), the driver prints
 error message:
@@ -15,7 +17,6 @@
 Bugzilla ID: 377
 Fixes: b3bbd9e5f2 ("cryptodev: support device independent sessions")
 Fixes: c68d7aa354 ("crypto/aesni_mb: use architecture independent macros")
-Cc: stable at dpdk.org
 
 Signed-off-by: Junxiao Shi <git at mail1.yoursunny.com>
 ---


More information about the stable mailing list