mbox series

[v3,0/5] add remaining SGL support to AESNI_MB

Message ID 20220921125036.9104-1-ciara.power@intel.com (mailing list archive)
Headers
Series add remaining SGL support to AESNI_MB |

Message

Power, Ciara Sept. 21, 2022, 12:50 p.m. UTC
  Currently, the intel-ipsec-mb library only supports SGL for
GCM and ChaCha20-Poly1305 algorithms through the JOB API.

To add SGL support for other algorithms, a workaround approach is
added in the AESNI_MB PMD. SGL feature flags can now be added to
the PMD.

This patchset also includes a fix for SGL wireless operations,
session cleanup and session creation for sessionless operations.

Some additional Snow3G SGL and AES tests are also added for
various SGL input/output combinations that were not
previously being tested.

v3:
  - Modified fix to reset sessions, and ensure values are then set for
    sessionless testcases. V2 fix just ensured the same values in
    session objects were reused, as they were not being reset,
    which was incorrect.
  - Reduced code duplication by adding a reusable function.
  - Changed int to uint64_t for total_len.

v2:
  - Added documentation changes.
  - Added fix for sessionless cleanup.
  - Modified blockcipher tests to support various SGL types.
  - Added more SGL AES tests.
  - Small fixes.


Ciara Power (5):
  test/crypto: fix wireless auth digest segment
  crypto/ipsec_mb: fix session creation for sessionless
  crypto/ipsec_mb: add remaining SGL support
  test/crypto: add OOP snow3g SGL tests
  test/crypto: add remaining blockcipher SGL tests

 app/test/test_cryptodev.c                   |  56 +++-
 app/test/test_cryptodev_aes_test_vectors.h  | 345 +++++++++++++++++---
 app/test/test_cryptodev_blockcipher.c       |  50 +--
 app/test/test_cryptodev_blockcipher.h       |   2 +
 app/test/test_cryptodev_hash_test_vectors.h |   8 +-
 doc/guides/cryptodevs/aesni_mb.rst          |   1 -
 doc/guides/cryptodevs/features/aesni_mb.ini |   4 +
 doc/guides/rel_notes/release_22_11.rst      |   5 +
 drivers/crypto/ipsec_mb/ipsec_mb_private.h  |  12 +-
 drivers/crypto/ipsec_mb/pmd_aesni_mb.c      | 180 ++++++++--
 lib/cryptodev/rte_cryptodev.c               |   1 +
 11 files changed, 547 insertions(+), 117 deletions(-)
  

Comments

De Lara Guarch, Pablo Sept. 26, 2022, 8:06 a.m. UTC | #1
Hi Ciara,

> -----Original Message-----
> From: Power, Ciara <ciara.power@intel.com>
> Sent: Wednesday, September 21, 2022 2:51 PM
> Cc: dev@dpdk.org; Ji, Kai <kai.ji@intel.com>; Zhang, Roy Fan
> <roy.fan.zhang@intel.com>; De Lara Guarch, Pablo
> <pablo.de.lara.guarch@intel.com>; Power, Ciara <ciara.power@intel.com>
> Subject: [PATCH v3 0/5] add remaining SGL support to AESNI_MB
> 
> Currently, the intel-ipsec-mb library only supports SGL for GCM and ChaCha20-
> Poly1305 algorithms through the JOB API.
> 
> To add SGL support for other algorithms, a workaround approach is added in
> the AESNI_MB PMD. SGL feature flags can now be added to the PMD.
> 
> This patchset also includes a fix for SGL wireless operations, session cleanup and
> session creation for sessionless operations.
> 
> Some additional Snow3G SGL and AES tests are also added for various SGL
> input/output combinations that were not previously being tested.
> 
> v3:
>   - Modified fix to reset sessions, and ensure values are then set for
>     sessionless testcases. V2 fix just ensured the same values in
>     session objects were reused, as they were not being reset,
>     which was incorrect.
>   - Reduced code duplication by adding a reusable function.
>   - Changed int to uint64_t for total_len.
> 
> v2:
>   - Added documentation changes.
>   - Added fix for sessionless cleanup.
>   - Modified blockcipher tests to support various SGL types.
>   - Added more SGL AES tests.
>   - Small fixes.
> 
> 
> Ciara Power (5):
>   test/crypto: fix wireless auth digest segment
>   crypto/ipsec_mb: fix session creation for sessionless
>   crypto/ipsec_mb: add remaining SGL support
>   test/crypto: add OOP snow3g SGL tests
>   test/crypto: add remaining blockcipher SGL tests
> 
>  app/test/test_cryptodev.c                   |  56 +++-
>  app/test/test_cryptodev_aes_test_vectors.h  | 345 +++++++++++++++++---
>  app/test/test_cryptodev_blockcipher.c       |  50 +--
>  app/test/test_cryptodev_blockcipher.h       |   2 +
>  app/test/test_cryptodev_hash_test_vectors.h |   8 +-
>  doc/guides/cryptodevs/aesni_mb.rst          |   1 -
>  doc/guides/cryptodevs/features/aesni_mb.ini |   4 +
>  doc/guides/rel_notes/release_22_11.rst      |   5 +
>  drivers/crypto/ipsec_mb/ipsec_mb_private.h  |  12 +-
>  drivers/crypto/ipsec_mb/pmd_aesni_mb.c      | 180 ++++++++--
>  lib/cryptodev/rte_cryptodev.c               |   1 +
>  11 files changed, 547 insertions(+), 117 deletions(-)
> 
> --
> 2.25.1

Thanks for addressing the comments!

Series-acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>