[dpdk-dev] [PATCH v3 00/10] drivers/crypto: introduce ipsec_mb framework
Ciara Power
ciara.power at intel.com
Wed Sep 29 18:30:25 CEST 2021
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.
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 (2):
crypto/ipsec_mb: add multiprocess support
doc/rel_notes: added note for SW Crypto PMD change
Fan Zhang (1):
drivers/crypto: introduce IPsec-mb framework
Kai Ji (1):
crypto/ipsec_mb: add chacha20-poly1305 PMD to framework
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 | 39 +-
app/test/test_cryptodev.c | 23 +
app/test/test_cryptodev.h | 1 +
app/test/test_cryptodev_aead_test_vectors.h | 114 +
doc/guides/cryptodevs/aesni_gcm.rst | 4 +-
doc/guides/cryptodevs/aesni_mb.rst | 4 +-
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 | 34 +
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/rte_aesni_mb_pmd.c | 2232 ------------
.../crypto/aesni_mb/rte_aesni_mb_pmd_ops.c | 1126 -------
drivers/crypto/aesni_mb/version.map | 3 -
drivers/crypto/ipsec_mb/meson.build | 33 +
drivers/crypto/ipsec_mb/pmd_aesni_gcm.c | 1003 ++++++
drivers/crypto/ipsec_mb/pmd_aesni_mb.c | 2977 +++++++++++++++++
drivers/crypto/ipsec_mb/pmd_chacha_poly.c | 482 +++
drivers/crypto/ipsec_mb/pmd_kasumi.c | 556 +++
drivers/crypto/ipsec_mb/pmd_snow3g.c | 697 ++++
.../{zuc/rte_zuc_pmd.c => ipsec_mb/pmd_zuc.c} | 459 +--
drivers/crypto/ipsec_mb/rte_ipsec_mb_pmd.c | 172 +
.../crypto/ipsec_mb/rte_ipsec_mb_pmd_ops.c | 369 ++
.../ipsec_mb/rte_ipsec_mb_pmd_private.h | 456 +++
.../{aesni_gcm => ipsec_mb}/version.map | 2 +-
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.c | 656 ----
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_ops.c | 322 --
drivers/crypto/zuc/version.map | 3 -
drivers/crypto/zuc/zuc_pmd_private.h | 83 -
50 files changed, 7264 insertions(+), 8191 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/rte_aesni_mb_pmd.c
delete mode 100644 drivers/crypto/aesni_mb/rte_aesni_mb_pmd_ops.c
delete mode 100644 drivers/crypto/aesni_mb/version.map
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_mb.c
create mode 100644 drivers/crypto/ipsec_mb/pmd_chacha_poly.c
create mode 100644 drivers/crypto/ipsec_mb/pmd_kasumi.c
create mode 100644 drivers/crypto/ipsec_mb/pmd_snow3g.c
rename drivers/crypto/{zuc/rte_zuc_pmd.c => ipsec_mb/pmd_zuc.c} (50%)
create mode 100644 drivers/crypto/ipsec_mb/rte_ipsec_mb_pmd.c
create mode 100644 drivers/crypto/ipsec_mb/rte_ipsec_mb_pmd_ops.c
create mode 100644 drivers/crypto/ipsec_mb/rte_ipsec_mb_pmd_private.h
rename drivers/crypto/{aesni_gcm => ipsec_mb}/version.map (58%)
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.c
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_ops.c
delete mode 100644 drivers/crypto/zuc/version.map
delete mode 100644 drivers/crypto/zuc/zuc_pmd_private.h
--
2.25.1
More information about the dev
mailing list