From: Shiri Kuzin <shirik@nvidia.com>
To: <dev@dpdk.org>
Cc: <matan@nvidia.com>, <gakhil@marvell.com>, <suanmingm@nvidia.com>,
<david.marchand@redhat.com>
Subject: [dpdk-dev] [PATCH v6 03/15] crypto/mlx5: add session operations
Date: Thu, 8 Jul 2021 18:25:18 +0300 [thread overview]
Message-ID: <20210708152530.25835-4-shirik@nvidia.com> (raw)
In-Reply-To: <20210708152530.25835-1-shirik@nvidia.com>
Sessions are used in symmetric transformations in order to prepare
objects and data for packet processing stage.
A mlx5 session includes iv_offset, pointer to mlx5_crypto_dek struct,
bsf_size, bsf_p_type, block size index, encryption_order and encryption
standard.
Implement the next session operations:
mlx5_crypto_sym_session_get_size- returns the size of the mlx5
session struct.
mlx5_crypto_sym_session_configure- prepares the DEK hash-list
and saves all the session data.
mlx5_crypto_sym_session_clear - destroys the DEK hash-list.
Signed-off-by: Shiri Kuzin <shirik@nvidia.com>
Acked-by: Matan Azrad <matan@nvidia.com>
---
doc/guides/cryptodevs/features/mlx5.ini | 5 +
doc/guides/cryptodevs/mlx5.rst | 10 ++
drivers/crypto/mlx5/mlx5_crypto.c | 172 +++++++++++++++++++++++-
3 files changed, 182 insertions(+), 5 deletions(-)
diff --git a/doc/guides/cryptodevs/features/mlx5.ini b/doc/guides/cryptodevs/features/mlx5.ini
index ceadd967b6..bd757b5211 100644
--- a/doc/guides/cryptodevs/features/mlx5.ini
+++ b/doc/guides/cryptodevs/features/mlx5.ini
@@ -4,12 +4,17 @@
; Refer to default.ini for the full list of available PMD features.
;
[Features]
+Symmetric crypto = Y
HW Accelerated = Y
+Cipher multiple data units = Y
+Cipher wrapped key = Y
;
; Supported crypto algorithms of a mlx5 crypto driver.
;
[Cipher]
+AES XTS (128) = Y
+AES XTS (256) = Y
;
; Supported authentication algorithms of a mlx5 crypto driver.
diff --git a/doc/guides/cryptodevs/mlx5.rst b/doc/guides/cryptodevs/mlx5.rst
index 05a0a449e2..dd1d1a615d 100644
--- a/doc/guides/cryptodevs/mlx5.rst
+++ b/doc/guides/cryptodevs/mlx5.rst
@@ -53,6 +53,16 @@ Supported NICs
* Mellanox\ |reg| ConnectX\ |reg|-6 200G MCX654106A-HCAT (2x200G)
+
+Limitations
+-----------
+
+- AES-XTS keys provided in xform must include keytag and should be wrappend.
+- The supported data-unit lengths are 512B and 1KB. In case the `dataunit_len`
+ is not provided in the cipher xform, the OP length is limited to the above
+ values and 1MB.
+
+
Prerequisites
-------------
diff --git a/drivers/crypto/mlx5/mlx5_crypto.c b/drivers/crypto/mlx5/mlx5_crypto.c
index d2d82c7b15..3f0c97d081 100644
--- a/drivers/crypto/mlx5/mlx5_crypto.c
+++ b/drivers/crypto/mlx5/mlx5_crypto.c
@@ -3,6 +3,7 @@
*/
#include <rte_malloc.h>
+#include <rte_mempool.h>
#include <rte_errno.h>
#include <rte_log.h>
#include <rte_pci.h>
@@ -20,7 +21,9 @@
#define MLX5_CRYPTO_LOG_NAME pmd.crypto.mlx5
#define MLX5_CRYPTO_FEATURE_FLAGS \
- RTE_CRYPTODEV_FF_HW_ACCELERATED
+ (RTE_CRYPTODEV_FF_SYMMETRIC_CRYPTO | RTE_CRYPTODEV_FF_HW_ACCELERATED | \
+ RTE_CRYPTODEV_FF_CIPHER_WRAPPED_KEY | \
+ RTE_CRYPTODEV_FF_CIPHER_MULTIPLE_DATA_UNITS)
TAILQ_HEAD(mlx5_crypto_privs, mlx5_crypto_priv) mlx5_crypto_priv_list =
TAILQ_HEAD_INITIALIZER(mlx5_crypto_priv_list);
@@ -30,6 +33,32 @@ int mlx5_crypto_logtype;
uint8_t mlx5_crypto_driver_id;
+const struct rte_cryptodev_capabilities mlx5_crypto_caps[] = {
+ { /* AES XTS */
+ .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC,
+ {.sym = {
+ .xform_type = RTE_CRYPTO_SYM_XFORM_CIPHER,
+ {.cipher = {
+ .algo = RTE_CRYPTO_CIPHER_AES_XTS,
+ .block_size = 16,
+ .key_size = {
+ .min = 32,
+ .max = 64,
+ .increment = 32
+ },
+ .iv_size = {
+ .min = 16,
+ .max = 16,
+ .increment = 0
+ },
+ .dataunit_set =
+ RTE_CRYPTO_CIPHER_DATA_UNIT_LEN_512_BYTES |
+ RTE_CRYPTO_CIPHER_DATA_UNIT_LEN_4096_BYTES,
+ }, }
+ }, }
+ },
+};
+
static const char mlx5_crypto_drv_name[] = RTE_STR(MLX5_CRYPTO_DRIVER_NAME);
static const struct rte_driver mlx5_drv = {
@@ -39,6 +68,49 @@ static const struct rte_driver mlx5_drv = {
static struct cryptodev_driver mlx5_cryptodev_driver;
+struct mlx5_crypto_session {
+ uint32_t bs_bpt_eo_es;
+ /*
+ * bsf_size, bsf_p_type, encryption_order and encryption standard,
+ * saved in big endian format.
+ */
+ uint32_t bsp_res;
+ /*
+ * crypto_block_size_pointer and reserved 24 bits saved in big endian
+ * format.
+ */
+ uint32_t iv_offset:16;
+ /* Starting point for Initialisation Vector. */
+ struct mlx5_crypto_dek *dek; /* Pointer to dek struct. */
+ uint32_t dek_id; /* DEK ID */
+} __rte_packed;
+
+static void
+mlx5_crypto_dev_infos_get(struct rte_cryptodev *dev,
+ struct rte_cryptodev_info *dev_info)
+{
+ RTE_SET_USED(dev);
+ if (dev_info != NULL) {
+ dev_info->driver_id = mlx5_crypto_driver_id;
+ dev_info->feature_flags = MLX5_CRYPTO_FEATURE_FLAGS;
+ dev_info->capabilities = mlx5_crypto_caps;
+ dev_info->max_nb_queue_pairs = 0;
+ dev_info->min_mbuf_headroom_req = 0;
+ dev_info->min_mbuf_tailroom_req = 0;
+ dev_info->sym.max_nb_sessions = 0;
+ /*
+ * If 0, the device does not have any limitation in number of
+ * sessions that can be used.
+ */
+ }
+}
+
+static unsigned int
+mlx5_crypto_sym_session_get_size(struct rte_cryptodev *dev __rte_unused)
+{
+ return sizeof(struct mlx5_crypto_session);
+}
+
static int
mlx5_crypto_dev_configure(struct rte_cryptodev *dev,
struct rte_cryptodev_config *config __rte_unused)
@@ -61,19 +133,109 @@ mlx5_crypto_dev_close(struct rte_cryptodev *dev)
return 0;
}
+static int
+mlx5_crypto_sym_session_configure(struct rte_cryptodev *dev,
+ struct rte_crypto_sym_xform *xform,
+ struct rte_cryptodev_sym_session *session,
+ struct rte_mempool *mp)
+{
+ struct mlx5_crypto_priv *priv = dev->data->dev_private;
+ struct mlx5_crypto_session *sess_private_data;
+ struct rte_crypto_cipher_xform *cipher;
+ uint8_t encryption_order;
+ int ret;
+
+ if (unlikely(xform->next != NULL)) {
+ DRV_LOG(ERR, "Xform next is not supported.");
+ return -ENOTSUP;
+ }
+ if (unlikely((xform->type != RTE_CRYPTO_SYM_XFORM_CIPHER) ||
+ (xform->cipher.algo != RTE_CRYPTO_CIPHER_AES_XTS))) {
+ DRV_LOG(ERR, "Only AES-XTS algorithm is supported.");
+ return -ENOTSUP;
+ }
+ ret = rte_mempool_get(mp, (void *)&sess_private_data);
+ if (ret != 0) {
+ DRV_LOG(ERR,
+ "Failed to get session %p private data from mempool.",
+ sess_private_data);
+ return -ENOMEM;
+ }
+ cipher = &xform->cipher;
+ sess_private_data->dek = mlx5_crypto_dek_prepare(priv, cipher);
+ if (sess_private_data->dek == NULL) {
+ rte_mempool_put(mp, sess_private_data);
+ DRV_LOG(ERR, "Failed to prepare dek.");
+ return -ENOMEM;
+ }
+ if (cipher->op == RTE_CRYPTO_CIPHER_OP_ENCRYPT)
+ encryption_order = MLX5_ENCRYPTION_ORDER_ENCRYPTED_RAW_MEMORY;
+ else
+ encryption_order = MLX5_ENCRYPTION_ORDER_ENCRYPTED_RAW_WIRE;
+ sess_private_data->bs_bpt_eo_es = rte_cpu_to_be_32
+ (MLX5_BSF_SIZE_64B << MLX5_BSF_SIZE_OFFSET |
+ MLX5_BSF_P_TYPE_CRYPTO << MLX5_BSF_P_TYPE_OFFSET |
+ encryption_order << MLX5_ENCRYPTION_ORDER_OFFSET |
+ MLX5_ENCRYPTION_STANDARD_AES_XTS);
+ switch (xform->cipher.dataunit_len) {
+ case 0:
+ sess_private_data->bsp_res = 0;
+ break;
+ case 512:
+ sess_private_data->bsp_res = rte_cpu_to_be_32
+ ((uint32_t)MLX5_BLOCK_SIZE_512B <<
+ MLX5_BLOCK_SIZE_OFFSET);
+ break;
+ case 4096:
+ sess_private_data->bsp_res = rte_cpu_to_be_32
+ ((uint32_t)MLX5_BLOCK_SIZE_4096B <<
+ MLX5_BLOCK_SIZE_OFFSET);
+ break;
+ default:
+ DRV_LOG(ERR, "Cipher data unit length is not supported.");
+ return -ENOTSUP;
+ }
+ sess_private_data->iv_offset = cipher->iv.offset;
+ sess_private_data->dek_id =
+ rte_cpu_to_be_32(sess_private_data->dek->obj->id &
+ 0xffffff);
+ set_sym_session_private_data(session, dev->driver_id,
+ sess_private_data);
+ DRV_LOG(DEBUG, "Session %p was configured.", sess_private_data);
+ return 0;
+}
+
+static void
+mlx5_crypto_sym_session_clear(struct rte_cryptodev *dev,
+ struct rte_cryptodev_sym_session *sess)
+{
+ struct mlx5_crypto_priv *priv = dev->data->dev_private;
+ struct mlx5_crypto_session *spriv = get_sym_session_private_data(sess,
+ dev->driver_id);
+
+ if (unlikely(spriv == NULL)) {
+ DRV_LOG(ERR, "Failed to get session %p private data.", spriv);
+ return;
+ }
+ mlx5_crypto_dek_destroy(priv, spriv->dek);
+ set_sym_session_private_data(sess, dev->driver_id, NULL);
+ rte_mempool_put(rte_mempool_from_obj(spriv), spriv);
+ DRV_LOG(DEBUG, "Session %p was cleared.", spriv);
+}
+
static struct rte_cryptodev_ops mlx5_crypto_ops = {
.dev_configure = mlx5_crypto_dev_configure,
.dev_start = NULL,
.dev_stop = NULL,
.dev_close = mlx5_crypto_dev_close,
- .dev_infos_get = NULL,
+ .dev_infos_get = mlx5_crypto_dev_infos_get,
.stats_get = NULL,
.stats_reset = NULL,
.queue_pair_setup = NULL,
.queue_pair_release = NULL,
- .sym_session_get_size = NULL,
- .sym_session_configure = NULL,
- .sym_session_clear = NULL,
+ .sym_session_get_size = mlx5_crypto_sym_session_get_size,
+ .sym_session_configure = mlx5_crypto_sym_session_configure,
+ .sym_session_clear = mlx5_crypto_sym_session_clear,
.sym_get_raw_dp_ctx_size = NULL,
.sym_configure_raw_dp_ctx = NULL,
};
--
2.27.0
next prev parent reply other threads:[~2021-07-08 15:26 UTC|newest]
Thread overview: 278+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-11 7:26 [dpdk-dev] [RFC] drivers: introduce mlx5 crypto PMD Matan Azrad
2021-04-08 20:48 ` [dpdk-dev] [PATCH 00/24] " Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 01/24] common/mlx5: remove redundant spaces in header file Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 02/24] common/mlx5: update GENEVE TLV OPT obj name Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 03/24] common/mlx5: optimize read of general obj type caps Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 04/24] common/mlx5: add HCA cap for AES-XTS crypto Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 05/24] common/mlx5: support general object DEK create op Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 06/24] common/mlx5: add crypto en field to MKEY context Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 07/24] common/mlx5: support umr en field in " Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 08/24] common/mlx5: support general obj IMPORT KEK create Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 09/24] common/mlx5: support general obj CRYPTO LOGIN create Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 10/24] common/mlx5: add crypto BSF struct and defines Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 11/24] common/mlx5: share hash list tool Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 12/24] common/mlx5: share get ib device match function Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 13/24] common/mlx5: support general obj CREDENTIAL create Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 14/24] common/mlx5: add crypto register structs and defs Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 15/24] common/mlx5: support register write access Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 16/24] drivers: introduce mlx5 crypto PMD Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 17/24] crypto/mlx5: add DEK object management Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 18/24] crypto/mlx5: support session operations Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 19/24] crypto/mlx5: add basic operations Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 20/24] crypto/mlx5: support queue pairs operations Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 21/24] crypto/mlx5: add dev stop and start operations Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 22/24] crypto/mlx5: add memory region management Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 23/24] crypto/mlx5: create login object using DevX Shiri Kuzin
2021-04-08 20:48 ` [dpdk-dev] [PATCH 24/24] crypto/mlx5: adjust to the multiple data unit API Shiri Kuzin
2021-04-13 18:02 ` [dpdk-dev] [EXT] [PATCH 00/24] drivers: introduce mlx5 crypto PMD Akhil Goyal
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 00/16] mlx5 common part for crypto driver Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 01/16] common/mlx5: remove redundant spaces in header file Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 02/16] common/mlx5: update GENEVE TLV OPT obj name Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 03/16] common/mlx5: optimize read of general obj type caps Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 04/16] common/mlx5: add HCA cap for AES-XTS crypto Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 05/16] common/mlx5: support general object DEK create op Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 06/16] common/mlx5: adjust DevX MKEY fields for crypto Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 07/16] common/mlx5: fix cypto bsf attr Matan Azrad
2021-04-29 15:56 ` Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 08/16] common/mlx5: support general obj IMPORT KEK create Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 09/16] common/mlx5: support general obj CRYPTO LOGIN create Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 10/16] common/mlx5: add crypto BSF struct and defines Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 11/16] common/mlx5: share hash list tool Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 12/16] common/mlx5: share get ib device match function Matan Azrad
2021-05-04 10:55 ` Thomas Monjalon
2021-05-04 11:30 ` Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 13/16] common/mlx5: support general obj CREDENTIAL create Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 14/16] common/mlx5: add crypto register structs and defs Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 15/16] common/mlx5: support register write access Matan Azrad
2021-05-04 10:58 ` Thomas Monjalon
2021-05-04 11:32 ` Matan Azrad
2021-04-29 15:43 ` [dpdk-dev] [PATCH v2 16/16] common/mlx5: add UMR and RDMA write WQE defines Matan Azrad
2021-05-02 7:27 ` [dpdk-dev] [PATCH v2 00/16] mlx5 common part for crypto driver Matan Azrad
2021-05-04 17:54 ` [dpdk-dev] [PATCH v3 00/15] " Matan Azrad
2021-05-04 17:54 ` [dpdk-dev] [PATCH v3 01/15] common/mlx5: remove redundant spaces in header file Matan Azrad
2021-05-04 17:54 ` [dpdk-dev] [PATCH v3 02/15] common/mlx5: update GENEVE TLV OPT obj name Matan Azrad
2021-05-04 17:54 ` [dpdk-dev] [PATCH v3 03/15] common/mlx5: optimize read of general obj type caps Matan Azrad
2021-05-04 17:54 ` [dpdk-dev] [PATCH v3 04/15] common/mlx5: add HCA cap for AES-XTS crypto Matan Azrad
2021-05-04 17:54 ` [dpdk-dev] [PATCH v3 05/15] common/mlx5: support general object DEK create op Matan Azrad
2021-05-04 17:54 ` [dpdk-dev] [PATCH v3 06/15] common/mlx5: adjust DevX MKEY fields for crypto Matan Azrad
2021-05-04 17:54 ` [dpdk-dev] [PATCH v3 07/15] common/mlx5: support general obj IMPORT KEK create Matan Azrad
2021-05-04 17:54 ` [dpdk-dev] [PATCH v3 08/15] common/mlx5: support general obj CRYPTO LOGIN create Matan Azrad
2021-05-04 17:54 ` [dpdk-dev] [PATCH v3 09/15] common/mlx5: add crypto BSF struct and defines Matan Azrad
2021-05-04 17:54 ` [dpdk-dev] [PATCH v3 10/15] common/mlx5: share hash list tool Matan Azrad
2021-05-04 17:54 ` [dpdk-dev] [PATCH v3 11/15] common/mlx5: share get ib device match function Matan Azrad
2021-05-04 17:54 ` [dpdk-dev] [PATCH v3 12/15] common/mlx5: support general obj CREDENTIAL create Matan Azrad
2021-05-04 17:54 ` [dpdk-dev] [PATCH v3 13/15] common/mlx5: add crypto register structs and defs Matan Azrad
2021-05-04 17:54 ` [dpdk-dev] [PATCH v3 14/15] common/mlx5: support register write access Matan Azrad
2021-05-04 17:55 ` [dpdk-dev] [PATCH v3 15/15] common/mlx5: add UMR and RDMA write WQE defines Matan Azrad
2021-05-04 21:17 ` [dpdk-dev] [PATCH v3 00/15] mlx5 common part for crypto driver Thomas Monjalon
2021-04-29 15:46 ` [dpdk-dev] [PATCH v2 00/15] drivers: introduce mlx5 crypto PMD Matan Azrad
2021-04-29 15:46 ` [dpdk-dev] [PATCH v2 01/15] " Matan Azrad
2021-04-29 15:46 ` [dpdk-dev] [PATCH v2 02/15] crypto/mlx5: add DEK object management Matan Azrad
2021-04-29 15:47 ` [dpdk-dev] [PATCH v2 03/15] crypto/mlx5: support session operations Matan Azrad
2021-04-29 15:47 ` [dpdk-dev] [PATCH v2 04/15] crypto/mlx5: add basic operations Matan Azrad
2021-04-29 15:47 ` [dpdk-dev] [PATCH v2 05/15] crypto/mlx5: support queue pairs operations Matan Azrad
2021-04-29 15:47 ` [dpdk-dev] [PATCH v2 06/15] crypto/mlx5: add dev stop and start operations Matan Azrad
2021-04-29 15:47 ` [dpdk-dev] [PATCH v2 07/15] crypto/mlx5: add memory region management Matan Azrad
2021-04-29 15:47 ` [dpdk-dev] [PATCH v2 08/15] crypto/mlx5: create login object using DevX Matan Azrad
2021-04-29 15:47 ` [dpdk-dev] [PATCH v2 09/15] crypto/mlx5: adjust to the multiple data unit API Matan Azrad
2021-04-29 15:47 ` [dpdk-dev] [PATCH v2 10/15] crypto/mlx5: add keytag device argument Matan Azrad
2021-04-29 15:47 ` [dpdk-dev] [PATCH v2 11/15] crypto/mlx5: add maximum segments " Matan Azrad
2021-04-29 15:47 ` [dpdk-dev] [PATCH v2 12/15] crypto/mlx5: add WQE set initialization Matan Azrad
2021-04-29 15:47 ` [dpdk-dev] [PATCH v2 13/15] crypto/mlx5: add enqueue and dequeue operations Matan Azrad
2021-04-29 15:47 ` [dpdk-dev] [PATCH v2 14/15] crypto/mlx5: add statistic get and reset operations Matan Azrad
2021-04-29 15:47 ` [dpdk-dev] [PATCH v2 15/15] crypto/mlx5: set feature flags and capabilities Matan Azrad
2021-05-02 7:27 ` [dpdk-dev] [PATCH v2 00/15] drivers: introduce mlx5 crypto PMD Matan Azrad
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 " Matan Azrad
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 01/15] " Matan Azrad
2021-05-08 11:16 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-05-09 7:46 ` Matan Azrad
2021-05-09 9:32 ` Akhil Goyal
2021-05-09 14:25 ` Matan Azrad
2021-05-11 17:24 ` Akhil Goyal
2021-05-12 5:32 ` Matan Azrad
2021-05-12 5:43 ` Akhil Goyal
2021-05-10 8:49 ` Bruce Richardson
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 02/15] crypto/mlx5: add DEK object management Matan Azrad
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 03/15] crypto/mlx5: support session operations Matan Azrad
2021-05-08 12:44 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-05-09 8:03 ` Matan Azrad
2021-05-09 9:21 ` Akhil Goyal
2021-05-09 14:25 ` Matan Azrad
2021-05-11 17:30 ` Akhil Goyal
2021-05-12 5:51 ` Matan Azrad
2021-05-12 6:47 ` Akhil Goyal
2021-05-12 7:25 ` Matan Azrad
2021-05-12 7:01 ` Thomas Monjalon
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 04/15] crypto/mlx5: add basic operations Matan Azrad
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 05/15] crypto/mlx5: support queue pairs operations Matan Azrad
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 06/15] crypto/mlx5: add dev stop and start operations Matan Azrad
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 07/15] crypto/mlx5: add memory region management Matan Azrad
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 08/15] crypto/mlx5: create login object using DevX Matan Azrad
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 09/15] crypto/mlx5: adjust to the multiple data unit API Matan Azrad
2021-05-08 12:27 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-05-09 8:05 ` Matan Azrad
2021-05-09 9:19 ` Akhil Goyal
2021-05-09 14:24 ` Matan Azrad
2021-05-11 17:34 ` Akhil Goyal
2021-05-12 5:53 ` Matan Azrad
2021-05-12 6:49 ` Akhil Goyal
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 10/15] crypto/mlx5: add keytag device argument Matan Azrad
2021-05-08 12:31 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-05-09 8:31 ` Matan Azrad
2021-05-09 8:56 ` Thomas Monjalon
2021-05-09 15:41 ` Matan Azrad
2021-05-09 9:17 ` Akhil Goyal
2021-05-09 14:23 ` Matan Azrad
2021-05-11 17:38 ` Akhil Goyal
2021-05-12 5:57 ` Matan Azrad
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 11/15] crypto/mlx5: add maximum segments " Matan Azrad
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 12/15] crypto/mlx5: add WQE set initialization Matan Azrad
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 13/15] crypto/mlx5: add enqueue and dequeue operations Matan Azrad
2021-05-08 12:18 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-05-09 8:32 ` Matan Azrad
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 14/15] crypto/mlx5: add statistic get and reset operations Matan Azrad
2021-05-04 21:08 ` [dpdk-dev] [PATCH v3 15/15] crypto/mlx5: set feature flags and capabilities Matan Azrad
2021-05-08 12:13 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-05-09 8:47 ` Matan Azrad
2021-05-09 9:14 ` Akhil Goyal
2021-05-09 14:19 ` Matan Azrad
2021-05-11 18:04 ` Akhil Goyal
2021-05-12 6:07 ` Matan Azrad
2021-05-12 6:55 ` Akhil Goyal
2021-05-09 16:04 ` [dpdk-dev] [PATCH v4 00/14] drivers: introduce mlx5 crypto PMD Matan Azrad
2021-05-09 16:04 ` [dpdk-dev] [PATCH v4 01/14] " Matan Azrad
2021-05-09 16:04 ` [dpdk-dev] [PATCH v4 02/14] crypto/mlx5: add DEK object management Matan Azrad
2021-05-09 16:04 ` [dpdk-dev] [PATCH v4 03/14] crypto/mlx5: add session operations Matan Azrad
2021-05-09 16:04 ` [dpdk-dev] [PATCH v4 04/14] crypto/mlx5: add basic operations Matan Azrad
2021-05-09 16:04 ` [dpdk-dev] [PATCH v4 05/14] crypto/mlx5: add queue pairs operations Matan Azrad
2021-05-09 16:04 ` [dpdk-dev] [PATCH v4 06/14] crypto/mlx5: add dev stop and start operations Matan Azrad
2021-05-09 16:05 ` [dpdk-dev] [PATCH v4 07/14] crypto/mlx5: add memory region management Matan Azrad
2021-05-09 16:05 ` [dpdk-dev] [PATCH v4 08/14] crypto/mlx5: create login object using DevX Matan Azrad
2021-05-09 16:05 ` [dpdk-dev] [PATCH v4 09/14] crypto/mlx5: add keytag devarg Matan Azrad
2021-05-09 16:05 ` [dpdk-dev] [PATCH v4 10/14] crypto/mlx5: add maximum segments devarg Matan Azrad
2021-05-09 16:05 ` [dpdk-dev] [PATCH v4 11/14] crypto/mlx5: add WQE set initialization Matan Azrad
2021-05-09 16:05 ` [dpdk-dev] [PATCH v4 12/14] crypto/mlx5: add enqueue and dequeue operations Matan Azrad
2021-05-09 16:05 ` [dpdk-dev] [PATCH v4 13/14] crypto/mlx5: add statistic get and reset operations Matan Azrad
2021-05-09 16:05 ` [dpdk-dev] [PATCH v4 14/14] crypto/mlx5: set feature flags and capabilities Matan Azrad
2021-07-01 13:25 ` [dpdk-dev] [PATCH v5 00/15] drivers: introduce mlx5 crypto PMD Shiri Kuzin
2021-07-01 13:25 ` [dpdk-dev] [PATCH v5 01/15] " Shiri Kuzin
2021-07-01 13:58 ` David Marchand
2021-07-01 13:25 ` [dpdk-dev] [PATCH v5 02/15] crypto/mlx5: add DEK object management Shiri Kuzin
2021-07-01 13:25 ` [dpdk-dev] [PATCH v5 03/15] crypto/mlx5: add session operations Shiri Kuzin
2021-07-01 13:25 ` [dpdk-dev] [PATCH v5 04/15] crypto/mlx5: add basic operations Shiri Kuzin
2021-07-01 13:25 ` [dpdk-dev] [PATCH v5 05/15] crypto/mlx5: add queue pairs operations Shiri Kuzin
2021-07-01 13:26 ` [dpdk-dev] [PATCH v5 06/15] crypto/mlx5: add dev stop and start operations Shiri Kuzin
2021-07-01 13:26 ` [dpdk-dev] [PATCH v5 07/15] crypto/mlx5: add memory region management Shiri Kuzin
2021-07-01 13:26 ` [dpdk-dev] [PATCH v5 08/15] crypto/mlx5: create login object using DevX Shiri Kuzin
2021-07-01 13:26 ` [dpdk-dev] [PATCH v5 09/15] crypto/mlx5: add keytag devarg Shiri Kuzin
2021-07-01 13:26 ` [dpdk-dev] [PATCH v5 10/15] crypto/mlx5: add maximum segments devarg Shiri Kuzin
2021-07-01 13:26 ` [dpdk-dev] [PATCH v5 11/15] crypto/mlx5: add WQE set initialization Shiri Kuzin
2021-07-01 13:26 ` [dpdk-dev] [PATCH v5 12/15] crypto/mlx5: add enqueue and dequeue operations Shiri Kuzin
2021-07-01 13:26 ` [dpdk-dev] [PATCH v5 13/15] crypto/mlx5: add statistic get and reset operations Shiri Kuzin
2021-07-01 13:26 ` [dpdk-dev] [PATCH v5 14/15] test/crypto: add mlx5 crypto driver Shiri Kuzin
2021-07-06 8:47 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-07-06 9:04 ` Thomas Monjalon
2021-07-01 13:26 ` [dpdk-dev] [PATCH v5 15/15] test/crypto: add mlx5 multi segment tests Shiri Kuzin
2021-07-06 7:48 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-07-06 9:11 ` Shiri Kuzin
2021-07-06 9:37 ` Akhil Goyal
2021-07-06 10:37 ` Shiri Kuzin
2021-07-08 15:25 ` [dpdk-dev] [PATCH v6 00/15] drivers: introduce mlx5 crypto PMD Shiri Kuzin
2021-07-08 15:25 ` [dpdk-dev] [PATCH v6 01/15] " Shiri Kuzin
2021-07-08 15:25 ` [dpdk-dev] [PATCH v6 02/15] crypto/mlx5: add DEK object management Shiri Kuzin
2021-07-08 15:25 ` Shiri Kuzin [this message]
2021-07-08 15:25 ` [dpdk-dev] [PATCH v6 04/15] crypto/mlx5: add basic operations Shiri Kuzin
2021-07-08 15:25 ` [dpdk-dev] [PATCH v6 05/15] crypto/mlx5: add queue pairs operations Shiri Kuzin
2021-07-08 15:25 ` [dpdk-dev] [PATCH v6 06/15] crypto/mlx5: add dev stop and start operations Shiri Kuzin
2021-07-08 15:25 ` [dpdk-dev] [PATCH v6 07/15] crypto/mlx5: add memory region management Shiri Kuzin
2021-07-08 15:25 ` [dpdk-dev] [PATCH v6 08/15] crypto/mlx5: create login object using DevX Shiri Kuzin
2021-07-08 15:25 ` [dpdk-dev] [PATCH v6 09/15] crypto/mlx5: add keytag devarg Shiri Kuzin
2021-07-08 15:25 ` [dpdk-dev] [PATCH v6 10/15] crypto/mlx5: add maximum segments devarg Shiri Kuzin
2021-07-08 15:25 ` [dpdk-dev] [PATCH v6 11/15] crypto/mlx5: add WQE set initialization Shiri Kuzin
2021-07-08 15:25 ` [dpdk-dev] [PATCH v6 12/15] crypto/mlx5: add enqueue and dequeue operations Shiri Kuzin
2021-07-08 15:25 ` [dpdk-dev] [PATCH v6 13/15] crypto/mlx5: add statistic get and reset operations Shiri Kuzin
2021-07-08 15:25 ` [dpdk-dev] [PATCH v6 14/15] test/crypto: add mlx5 crypto driver Shiri Kuzin
2021-07-08 15:25 ` [dpdk-dev] [PATCH v6 15/15] test/crypto: add data-unit and wrapped vectors Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 00/16] drivers: introduce mlx5 crypto PMD Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 01/16] " Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 02/16] crypto/mlx5: add DEK object management Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 03/16] crypto/mlx5: add session operations Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 04/16] crypto/mlx5: add basic operations Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 05/16] crypto/mlx5: add queue pairs operations Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 06/16] crypto/mlx5: add dev stop and start operations Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 07/16] crypto/mlx5: add memory region management Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 08/16] crypto/mlx5: create login object using DevX Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 09/16] crypto/mlx5: add keytag devarg Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 10/16] crypto/mlx5: add maximum segments devarg Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 11/16] crypto/mlx5: add WQE set initialization Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 12/16] crypto/mlx5: add enqueue and dequeue operations Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 13/16] crypto/mlx5: add statistic get and reset operations Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 14/16] test/crypto: add mlx5 crypto driver Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 15/16] test/crypto: add data-unit and wrapped vectors Shiri Kuzin
2021-07-15 15:08 ` [dpdk-dev] [PATCH v7 16/16] test/crypto: add AES-XTS multi segment OOP tests Shiri Kuzin
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 00/16] drivers: introduce mlx5 crypto PMD Shiri Kuzin
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 01/16] " Shiri Kuzin
2021-07-16 19:19 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-07-20 8:26 ` Suanming Mou
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 02/16] crypto/mlx5: add DEK object management Shiri Kuzin
2021-07-16 19:26 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-07-20 8:31 ` Suanming Mou
2021-07-20 8:36 ` Akhil Goyal
2021-07-20 8:49 ` Suanming Mou
2021-07-20 8:55 ` Akhil Goyal
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 03/16] crypto/mlx5: add session operations Shiri Kuzin
2021-07-16 19:40 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-07-20 8:59 ` Suanming Mou
2021-07-20 9:01 ` Akhil Goyal
2021-07-16 19:43 ` Akhil Goyal
2021-07-20 9:07 ` Suanming Mou
2021-07-20 9:43 ` Akhil Goyal
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 04/16] crypto/mlx5: add basic operations Shiri Kuzin
2021-07-16 19:34 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-07-20 8:33 ` Suanming Mou
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 05/16] crypto/mlx5: add queue pairs operations Shiri Kuzin
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 06/16] crypto/mlx5: add dev stop and start operations Shiri Kuzin
2021-07-16 19:44 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-07-20 9:08 ` Suanming Mou
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 07/16] crypto/mlx5: add memory region management Shiri Kuzin
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 08/16] crypto/mlx5: create login object using DevX Shiri Kuzin
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 09/16] crypto/mlx5: add keytag devarg Shiri Kuzin
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 10/16] crypto/mlx5: add maximum segments devarg Shiri Kuzin
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 11/16] crypto/mlx5: add WQE set initialization Shiri Kuzin
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 12/16] crypto/mlx5: add enqueue and dequeue operations Shiri Kuzin
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 13/16] crypto/mlx5: add statistic get and reset operations Shiri Kuzin
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 14/16] test/crypto: add mlx5 crypto driver Shiri Kuzin
2021-07-16 19:55 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 15/16] test/crypto: add data-unit and wrapped vectors Shiri Kuzin
2021-07-16 20:06 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-07-20 9:24 ` Suanming Mou
2021-07-20 9:50 ` Akhil Goyal
2021-07-15 16:41 ` [dpdk-dev] [PATCH v8 16/16] test/crypto: add AES-XTS multi segment OOP tests Shiri Kuzin
2021-07-16 20:10 ` [dpdk-dev] [EXT] " Akhil Goyal
2021-07-16 19:05 ` [dpdk-dev] [EXT] [PATCH v8 00/16] drivers: introduce mlx5 crypto PMD Akhil Goyal
2021-07-16 20:17 ` Akhil Goyal
2021-07-20 8:13 ` Akhil Goyal
2021-07-20 8:22 ` Suanming Mou
2021-07-20 8:38 ` Akhil Goyal
2021-07-20 8:41 ` Akhil Goyal
2021-07-20 8:44 ` Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 00/15] " Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 01/15] " Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 02/15] crypto/mlx5: add DEK object management Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 03/15] crypto/mlx5: add basic operations Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 04/15] crypto/mlx5: add queue pairs operations Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 05/15] crypto/mlx5: add session operations Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 06/15] crypto/mlx5: add memory region management Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 07/15] crypto/mlx5: create login object using DevX Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 08/15] crypto/mlx5: add keytag devarg Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 09/15] crypto/mlx5: add maximum segments devarg Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 10/15] crypto/mlx5: add WQE set initialization Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 11/15] crypto/mlx5: add enqueue and dequeue operations Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 12/15] crypto/mlx5: add statistic get and reset operations Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 13/15] test/crypto: add data-unit and wrapped vectors Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 14/15] test/crypto: add AES-XTS multi segment OOP tests Suanming Mou
2021-07-20 13:09 ` [dpdk-dev] [PATCH v9 15/15] test/crypto: add mlx5 crypto driver Suanming Mou
2021-07-20 20:43 ` [dpdk-dev] [EXT] [PATCH v9 00/15] drivers: introduce mlx5 crypto PMD Akhil Goyal
2021-07-20 21:01 ` Akhil Goyal
2021-07-21 0:26 ` Suanming Mou
2021-07-21 1:14 ` Suanming Mou
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210708152530.25835-4-shirik@nvidia.com \
--to=shirik@nvidia.com \
--cc=david.marchand@redhat.com \
--cc=dev@dpdk.org \
--cc=gakhil@marvell.com \
--cc=matan@nvidia.com \
--cc=suanmingm@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).