From: Akhil Goyal <gakhil@marvell.com>
To: Suanming Mou <suanmingm@nvidia.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>, "rasland@nvidia.com" <rasland@nvidia.com>
Subject: RE: [EXT] [PATCH v2 0/9] crypto/mlx5: support AES-GCM
Date: Wed, 14 Jun 2023 18:11:43 +0000 [thread overview]
Message-ID: <CO6PR18MB44849B8D0C62E6C88DF93BD0D85AA@CO6PR18MB4484.namprd18.prod.outlook.com> (raw)
In-Reply-To: <20230526031422.913377-1-suanmingm@nvidia.com>
> AES-GCM provides both authenticated encryption and the ability to check
> the integrity and authentication of additional authenticated data (AAD)
> that is sent in the clear.
>
> The crypto operations are performed with crypto WQE. If the input
> buffers(AAD, mbuf, digest) are not contiguous and there is no enough
> headroom or tailroom for AAD or digest, as the requirement from FW, an
> UMR WQE is needed to generate contiguous address space for crypto WQE.
> The UMR WQE and crypto WQE are handled in two different QPs.
>
> The QP for UMR operation contains two types of WQE, UMR and SEND_EN
> WQE. The WQEs are built dynamically according to the crypto operation
> buffer address. Crypto operation with non-contiguous buffers will
> have its own UMR WQE, while the operation with contiguous buffers
> doesn't need the UMR WQE. Once the all the operations WQE in the
> enqueue burst built finishes, if any UMR WQEs are built, additional
> SEND_EN WQE will be as the final WQE of the burst in the UMR QP.
> The purpose of that SEND_EN WQE is to trigger the crypto QP processing
> with the UMR ready input memory address space buffers.
>
> The QP for crypto operations contains only the crypto WQE and the QP
> WQEs are built as fixed in QP setup. The QP processing is triggered
> by doorbell ring or the SEND_EN WQE from UMR QP.
> \
Change log missing.
Please get it reviewed from PMD maintainer.
Also rebase the patchset, and fix checkpatch issues.
> Suanming Mou (9):
> common/mlx5: export memory region lookup by address
> crypto/mlx5: split AES-XTS
> crypto/mlx5: add AES-GCM query and initialization
> crypto/mlx5: add AES-GCM encryption key
> crypto/mlx5: add AES-GCM session configure
> common/mlx5: add WQE-based QP synchronous basics
> crypto/mlx5: add queue pair setup for GCM
> crypto/mlx5: add enqueue and dequeue operations
> crypto/mlx5: enable AES-GCM capability
>
> doc/guides/cryptodevs/mlx5.rst | 48 +-
> doc/guides/rel_notes/release_23_07.rst | 1 +
> drivers/common/mlx5/mlx5_common_mr.c | 2 +-
> drivers/common/mlx5/mlx5_common_mr.h | 5 +
> drivers/common/mlx5/mlx5_devx_cmds.c | 21 +
> drivers/common/mlx5/mlx5_devx_cmds.h | 16 +
> drivers/common/mlx5/mlx5_prm.h | 65 +-
> drivers/common/mlx5/version.map | 3 +
> drivers/crypto/mlx5/meson.build | 2 +
> drivers/crypto/mlx5/mlx5_crypto.c | 673 ++---------------
> drivers/crypto/mlx5/mlx5_crypto.h | 101 ++-
> drivers/crypto/mlx5/mlx5_crypto_dek.c | 102 ++-
> drivers/crypto/mlx5/mlx5_crypto_gcm.c | 995 +++++++++++++++++++++++++
> drivers/crypto/mlx5/mlx5_crypto_xts.c | 645 ++++++++++++++++
> 14 files changed, 2014 insertions(+), 665 deletions(-)
> create mode 100644 drivers/crypto/mlx5/mlx5_crypto_gcm.c
> create mode 100644 drivers/crypto/mlx5/mlx5_crypto_xts.c
>
> --
> 2.25.1
next prev parent reply other threads:[~2023-06-14 18:11 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-18 9:23 [RFC PATCH 0/5] " Suanming Mou
2023-04-18 9:23 ` [RFC PATCH 1/5] crypto/mlx5: add AES-GCM capability Suanming Mou
2023-05-17 7:37 ` [EXT] " Akhil Goyal
2023-05-17 7:42 ` Suanming Mou
2023-05-17 7:47 ` Akhil Goyal
2023-05-17 7:51 ` Suanming Mou
2023-05-17 8:02 ` Akhil Goyal
2023-05-17 8:06 ` Suanming Mou
2023-04-18 9:23 ` [RFC PATCH 2/5] crypto/mlx5: add AES-GCM encryption key Suanming Mou
2023-04-18 9:23 ` [RFC PATCH 3/5] crypto/mlx5: add AES-GCM session configure Suanming Mou
2023-04-18 9:23 ` [RFC PATCH 4/5] crypto/mlx5: add queue pair setup Suanming Mou
2023-04-18 9:23 ` [RFC PATCH 5/5] crypto/mlx5: add enqueue and dequeue operations Suanming Mou
2023-05-26 3:14 ` [PATCH v2 0/9] crypto/mlx5: support AES-GCM Suanming Mou
2023-05-26 3:14 ` [PATCH v2 1/9] common/mlx5: export memory region lookup by address Suanming Mou
2023-05-26 3:14 ` [PATCH v2 2/9] crypto/mlx5: split AES-XTS Suanming Mou
2023-05-26 3:14 ` [PATCH v2 3/9] crypto/mlx5: add AES-GCM query and initialization Suanming Mou
2023-05-26 3:14 ` [PATCH v2 4/9] crypto/mlx5: add AES-GCM encryption key Suanming Mou
2023-05-26 3:14 ` [PATCH v2 5/9] crypto/mlx5: add AES-GCM session configure Suanming Mou
2023-05-26 3:14 ` [PATCH v2 6/9] common/mlx5: add WQE-based QP synchronous basics Suanming Mou
2023-05-26 3:14 ` [PATCH v2 7/9] crypto/mlx5: add queue pair setup for GCM Suanming Mou
2023-05-26 3:14 ` [PATCH v2 8/9] crypto/mlx5: add enqueue and dequeue operations Suanming Mou
2023-05-26 3:14 ` [PATCH v2 9/9] crypto/mlx5: enable AES-GCM capability Suanming Mou
2023-06-14 18:11 ` Akhil Goyal [this message]
2023-06-20 1:22 ` [EXT] [PATCH v2 0/9] crypto/mlx5: support AES-GCM Suanming Mou
2023-06-20 1:23 ` Suanming Mou
2023-06-20 1:23 ` [PATCH v3 1/9] common/mlx5: export memory region lookup by address Suanming Mou
2023-06-20 1:23 ` [PATCH v3 2/9] crypto/mlx5: split AES-XTS Suanming Mou
2023-06-20 1:23 ` [PATCH v3 3/9] crypto/mlx5: add AES-GCM query and initialization Suanming Mou
2023-06-20 1:23 ` [PATCH v3 4/9] crypto/mlx5: add AES-GCM encryption key Suanming Mou
2023-06-20 1:23 ` [PATCH v3 5/9] crypto/mlx5: add AES-GCM session configure Suanming Mou
2023-06-20 1:23 ` [PATCH v3 6/9] common/mlx5: add WQE-based QP synchronous basics Suanming Mou
2023-06-20 1:23 ` [PATCH v3 7/9] crypto/mlx5: add queue pair setup for GCM Suanming Mou
2023-06-20 1:23 ` [PATCH v3 8/9] crypto/mlx5: add enqueue and dequeue operations Suanming Mou
2023-06-20 1:23 ` [PATCH v3 9/9] crypto/mlx5: enable AES-GCM capability Suanming Mou
2023-06-20 9:25 ` [EXT] " Akhil Goyal
2023-06-20 9:42 ` Suanming Mou
2023-06-20 9:48 ` Akhil Goyal
2023-06-20 9:56 ` Suanming Mou
2023-06-20 9:55 ` [PATCH v2 0/9] crypto/mlx5: support AES-GCM Suanming Mou
2023-06-20 9:58 ` Akhil Goyal
2023-06-20 10:03 ` Suanming Mou
2023-06-20 13:52 ` Matan Azrad
2023-06-20 14:11 ` [PATCH v4 " Suanming Mou
2023-06-20 14:11 ` [PATCH v4 1/9] common/mlx5: export memory region lookup by address Suanming Mou
2023-06-20 14:11 ` [PATCH v4 2/9] crypto/mlx5: split AES-XTS Suanming Mou
2023-06-20 14:11 ` [PATCH v4 3/9] crypto/mlx5: add AES-GCM query and initialization Suanming Mou
2023-06-20 14:11 ` [PATCH v4 4/9] crypto/mlx5: add AES-GCM encryption key Suanming Mou
2023-06-20 14:11 ` [PATCH v4 5/9] crypto/mlx5: add AES-GCM session configure Suanming Mou
2023-06-20 14:11 ` [PATCH v4 6/9] common/mlx5: add WQE-based QP synchronous basics Suanming Mou
2023-06-20 14:11 ` [PATCH v4 7/9] crypto/mlx5: add queue pair setup for GCM Suanming Mou
2023-06-20 14:11 ` [PATCH v4 8/9] crypto/mlx5: add enqueue and dequeue operations Suanming Mou
2023-06-20 14:11 ` [PATCH v4 9/9] crypto/mlx5: enable AES-GCM capability Suanming Mou
2023-06-20 18:49 ` [EXT] [PATCH v4 0/9] crypto/mlx5: support AES-GCM Akhil Goyal
2023-06-23 9:31 ` Thomas Monjalon
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=CO6PR18MB44849B8D0C62E6C88DF93BD0D85AA@CO6PR18MB4484.namprd18.prod.outlook.com \
--to=gakhil@marvell.com \
--cc=dev@dpdk.org \
--cc=rasland@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).