[dpdk-dev] [PATCH v1 0/8] drivers/crypto: introduce ipsec_mb framework

Ciara Power ciara.power at intel.com
Thu Aug 26 17:16:11 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.
The minimum intel-ipsec-mb version required is bumped to 1.0.

Fan Zhang (1):
  drivers/crypto: introduce IPsec-mb framework

Kai Ji (1):
  crypto/ipsec_mb: add chacha20-poly1305 PMD to framework

pbronowx (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

 app/test/test_cryptodev.c                     |   22 +
 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/features/snow3g.ini     |    1 +
 doc/guides/cryptodevs/kasumi.rst              |    3 +-
 doc/guides/cryptodevs/snow3g.rst              |    3 +-
 doc/guides/cryptodevs/zuc.rst                 |    3 +-
 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 -
 .../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       |  956 +++++++++
 .../pmd_aesni_mb.c}                           | 1767 ++++++++++++-----
 drivers/crypto/ipsec_mb/pmd_chacha_poly.c     |  529 +++++
 drivers/crypto/ipsec_mb/pmd_kasumi.c          |  557 ++++++
 drivers/crypto/ipsec_mb/pmd_snow3g.c          |  705 +++++++
 .../{zuc/rte_zuc_pmd.c => ipsec_mb/pmd_zuc.c} |  462 ++---
 drivers/crypto/ipsec_mb/rte_ipsec_mb_pmd.c    |  173 ++
 .../crypto/ipsec_mb/rte_ipsec_mb_pmd_ops.c    |  289 +++
 .../ipsec_mb/rte_ipsec_mb_pmd_private.h       |  470 +++++
 .../{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 -
 44 files changed, 5319 insertions(+), 6432 deletions(-)
 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_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
 rename drivers/crypto/{aesni_mb/rte_aesni_mb_pmd.c => ipsec_mb/pmd_aesni_mb.c} (60%)
 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