> This set of patches introduces a new framework, making all common code of
> SW crypto PMD implementations built on top of intel-ipsec-mb library
> sharable. This helps to reduce future effort on the code maintenance and
> future updates. It also moves all SW PMD implementation specific details
> into single files located in the crypto/ipsec_mb folder.
> A CHACHA20_POLY1305 SW PMD is added based on this framework.
> 
> Multi-process support for the PMDs is added for intel-ipsec-mb v1.1.
> The minimum intel-ipsec-mb version required is bumped to 1.0.
> 
> ZUC-256 support is added for the aesni_mb PMD, with relevant tests.
> 
> v4:

Acked-by: Akhil Goyal <gak...@marvell.com>
Patches are rebased over TOT of next-crypto
Release notes are updated
Applied to dpdk-next-crypto



>   - Renamed general files and functions to remove "_pmd_" and "rte_".
>   - Fixed copyright years in many files.
>   - Fixed some documentation errors.
>   - Split sections of the PMD files into header files.
>   - Fixed other small comments left on v3.
>   - Dropped release note patch from v3, added release notes incrementally
>     throughout the set.
>   - Updated CHACHA20_POLY1305 AAD max size for AESNI_MB.
>   - Removed unnecessary enqueue count variables and calls to enqueue
> when
>     processing ops for SNOW3G, ZUC, KASUMI.
>   - Removed some unnecessary includes for security headers in PMD files.
>   - Added call to release queue pairs in the remove function.
>   - Split CHACHA20_POLY1305 patch into two, (1) PMD addition and
>     (2) test app changes.
>   - Added 4 new patches for ZUC-256 support and tests, based on a
>     patch previously sent to the mailing list:
>     https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__patchwork.dpdk.org_project_dpdk_patch_20210910164516.807659-
> 2D1-2Dpablo.de.lara.guarch-
> 40intel.com_&d=DwIDaQ&c=nKjWec2b6R0mOyPaz7xtfQ&r=DnL7Si2wl_PRwp
> Z9TWey3eu68gBzn7DkPwuqhd6WNyo&m=uArCd3xuliTs88F0w-
> M_dUmWE501xEWXaFNHXmMFeW4&s=H01RcsI-I-
> lYeayHNmBHCbD0qp5aV2RZlGBVkOhZZu4&e=
> 
> v3:
>   - Added multiprocess support for v1.1 of intel-ipsec-mb.
>   - Fixed some formatting and comments.
>   - Added detail to some commit logs.
>   - Updated macros to use intel-ipsec-mb v1.0 supported macros.
>   - Added use of intel-ipsec-mb API to auto initialise IMB_MGR
>     based on CPU vector support.
> 
> v2:
>   - Added qp NULL check in get stats function.
>   - Updated maintainers file.
>   - Replaced use of strlcpy with rte_strlcpy.
>   - Fixed enum for GCM key length.
>   - Updated release notes.
>   - Added Chacha20_poly1305 PMD documentation.
> 
> Ciara Power (1):
>   crypto/ipsec_mb: add multiprocess support
> 
> Fan Zhang (1):
>   drivers/crypto: introduce IPsec-mb framework
> 
> Kai Ji (2):
>   crypto/ipsec_mb: add chacha20-poly1305 PMD to framework
>   test/crypto: add test for chacha20_poly1305 PMD
> 
> Pablo de Lara (4):
>   crypto/ipsec_mb: support ZUC-256 for aesni_mb
>   test/crypto: check cipher parameters
>   test/crypto: check auth parameters
>   test/crypto: add ZUC-256 vectors
> 
> Piotr Bronowski (6):
>   drivers/crypto: move aesni-mb PMD to IPsec-mb framework
>   drivers/crypto: move aesni-gcm PMD to IPsec-mb framework
>   drivers/crypto: move kasumi PMD to IPsec-mb framework
>   drivers/crypto: move snow3g PMD to IPsec-mb framework
>   crypto/ipsec_mb: add snow3g digest appended ops support
>   drivers/crypto: move zuc PMD to IPsec-mb framework
> 
>  MAINTAINERS                                   |   41 +-
>  app/test/test_cryptodev.c                     |  170 ++-
>  app/test/test_cryptodev.h                     |    1 +
>  app/test/test_cryptodev_aead_test_vectors.h   |  114 ++
>  app/test/test_cryptodev_zuc_test_vectors.h    |  286 ++++
>  doc/guides/cryptodevs/aesni_gcm.rst           |    4 +-
>  doc/guides/cryptodevs/aesni_mb.rst            |    5 +-
>  doc/guides/cryptodevs/chacha20_poly1305.rst   |   99 ++
>  .../cryptodevs/features/chacha20_poly1305.ini |   35 +
>  doc/guides/cryptodevs/features/snow3g.ini     |    1 +
>  doc/guides/cryptodevs/index.rst               |    1 +
>  doc/guides/cryptodevs/kasumi.rst              |    3 +-
>  doc/guides/cryptodevs/snow3g.rst              |    3 +-
>  doc/guides/cryptodevs/zuc.rst                 |    3 +-
>  doc/guides/rel_notes/release_21_11.rst        |   31 +
>  drivers/crypto/aesni_gcm/aesni_gcm_ops.h      |  104 --
>  drivers/crypto/aesni_gcm/aesni_gcm_pmd.c      |  984 -------------
>  drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c  |  333 -----
>  .../crypto/aesni_gcm/aesni_gcm_pmd_private.h  |  123 --
>  drivers/crypto/aesni_gcm/meson.build          |   24 -
>  .../crypto/aesni_mb/aesni_mb_pmd_private.h    |  337 -----
>  drivers/crypto/aesni_mb/meson.build           |   25 -
>  drivers/crypto/aesni_mb/version.map           |    3 -
>  drivers/crypto/ipsec_mb/ipsec_mb_ops.c        |  370 +++++
>  drivers/crypto/ipsec_mb/ipsec_mb_private.c    |  176 +++
>  drivers/crypto/ipsec_mb/ipsec_mb_private.h    |  455 ++++++
>  drivers/crypto/ipsec_mb/meson.build           |   33 +
>  drivers/crypto/ipsec_mb/pmd_aesni_gcm.c       |  837 +++++++++++
>  drivers/crypto/ipsec_mb/pmd_aesni_gcm_priv.h  |  169 +++
>  .../pmd_aesni_mb.c}                           | 1235 +++++++----------
>  .../pmd_aesni_mb_priv.h}                      |  681 ++++-----
>  drivers/crypto/ipsec_mb/pmd_chacha_poly.c     |  408 ++++++
>  .../crypto/ipsec_mb/pmd_chacha_poly_priv.h    |   74 +
>  drivers/crypto/ipsec_mb/pmd_kasumi.c          |  476 +++++++
>  drivers/crypto/ipsec_mb/pmd_kasumi_priv.h     |   81 ++
>  .../pmd_snow3g.c}                             |  543 ++++----
>  drivers/crypto/ipsec_mb/pmd_snow3g_priv.h     |   85 ++
>  drivers/crypto/ipsec_mb/pmd_zuc.c             |  403 ++++++
>  drivers/crypto/ipsec_mb/pmd_zuc_priv.h        |   85 ++
>  .../{aesni_gcm => ipsec_mb}/version.map       |    0
>  drivers/crypto/kasumi/kasumi_pmd_private.h    |   81 --
>  drivers/crypto/kasumi/meson.build             |   24 -
>  drivers/crypto/kasumi/rte_kasumi_pmd.c        |  642 ---------
>  drivers/crypto/kasumi/rte_kasumi_pmd_ops.c    |  316 -----
>  drivers/crypto/kasumi/version.map             |    3 -
>  drivers/crypto/meson.build                    |    6 +-
>  drivers/crypto/snow3g/meson.build             |   24 -
>  drivers/crypto/snow3g/rte_snow3g_pmd_ops.c    |  323 -----
>  drivers/crypto/snow3g/snow3g_pmd_private.h    |   84 --
>  drivers/crypto/snow3g/version.map             |    3 -
>  drivers/crypto/zuc/meson.build                |   24 -
>  drivers/crypto/zuc/rte_zuc_pmd.c              |  583 --------
>  drivers/crypto/zuc/rte_zuc_pmd_ops.c          |  322 -----
>  drivers/crypto/zuc/version.map                |    3 -
>  drivers/crypto/zuc/zuc_pmd_private.h          |   83 --
>  55 files changed, 5412 insertions(+), 5950 deletions(-)
>  create mode 100644 doc/guides/cryptodevs/chacha20_poly1305.rst
>  create mode 100644
> doc/guides/cryptodevs/features/chacha20_poly1305.ini
>  delete mode 100644 drivers/crypto/aesni_gcm/aesni_gcm_ops.h
>  delete mode 100644 drivers/crypto/aesni_gcm/aesni_gcm_pmd.c
>  delete mode 100644 drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c
>  delete mode 100644 drivers/crypto/aesni_gcm/aesni_gcm_pmd_private.h
>  delete mode 100644 drivers/crypto/aesni_gcm/meson.build
>  delete mode 100644 drivers/crypto/aesni_mb/aesni_mb_pmd_private.h
>  delete mode 100644 drivers/crypto/aesni_mb/meson.build
>  delete mode 100644 drivers/crypto/aesni_mb/version.map
>  create mode 100644 drivers/crypto/ipsec_mb/ipsec_mb_ops.c
>  create mode 100644 drivers/crypto/ipsec_mb/ipsec_mb_private.c
>  create mode 100644 drivers/crypto/ipsec_mb/ipsec_mb_private.h
>  create mode 100644 drivers/crypto/ipsec_mb/meson.build
>  create mode 100644 drivers/crypto/ipsec_mb/pmd_aesni_gcm.c
>  create mode 100644 drivers/crypto/ipsec_mb/pmd_aesni_gcm_priv.h
>  rename drivers/crypto/{aesni_mb/rte_aesni_mb_pmd.c =>
> ipsec_mb/pmd_aesni_mb.c} (60%)
>  rename drivers/crypto/{aesni_mb/rte_aesni_mb_pmd_ops.c =>
> ipsec_mb/pmd_aesni_mb_priv.h} (55%)
>  create mode 100644 drivers/crypto/ipsec_mb/pmd_chacha_poly.c
>  create mode 100644 drivers/crypto/ipsec_mb/pmd_chacha_poly_priv.h
>  create mode 100644 drivers/crypto/ipsec_mb/pmd_kasumi.c
>  create mode 100644 drivers/crypto/ipsec_mb/pmd_kasumi_priv.h
>  rename drivers/crypto/{snow3g/rte_snow3g_pmd.c =>
> ipsec_mb/pmd_snow3g.c} (51%)
>  create mode 100644 drivers/crypto/ipsec_mb/pmd_snow3g_priv.h
>  create mode 100644 drivers/crypto/ipsec_mb/pmd_zuc.c
>  create mode 100644 drivers/crypto/ipsec_mb/pmd_zuc_priv.h
>  rename drivers/crypto/{aesni_gcm => ipsec_mb}/version.map (100%)
>  delete mode 100644 drivers/crypto/kasumi/kasumi_pmd_private.h
>  delete mode 100644 drivers/crypto/kasumi/meson.build
>  delete mode 100644 drivers/crypto/kasumi/rte_kasumi_pmd.c
>  delete mode 100644 drivers/crypto/kasumi/rte_kasumi_pmd_ops.c
>  delete mode 100644 drivers/crypto/kasumi/version.map
>  delete mode 100644 drivers/crypto/snow3g/meson.build
>  delete mode 100644 drivers/crypto/snow3g/rte_snow3g_pmd_ops.c
>  delete mode 100644 drivers/crypto/snow3g/snow3g_pmd_private.h
>  delete mode 100644 drivers/crypto/snow3g/version.map
>  delete mode 100644 drivers/crypto/zuc/meson.build
>  delete mode 100644 drivers/crypto/zuc/rte_zuc_pmd.c
>  delete mode 100644 drivers/crypto/zuc/rte_zuc_pmd_ops.c
>  delete mode 100644 drivers/crypto/zuc/version.map
>  delete mode 100644 drivers/crypto/zuc/zuc_pmd_private.h
> 
> --
> 2.25.1

Reply via email to