mbox

[v4,0/5] crypto: improve asym session usage

Message ID 20220209153854.2740455-1-ciara.power@intel.com (mailing list archive)
Headers

Message

Power, Ciara Feb. 9, 2022, 3:38 p.m. UTC
  This patchset includes improvements for the asymmetric session.
The main change is to the session structure, which is now a single
mempool object, rather than having pointers to private data elsewhere.
This session structure is now hidden in an internal header,
so the app will never use it directly.

Some other changes include adding a user data API, and modifying
the return value for the create session function.
This create session function now also initialises the session,
and subsequently the clear/free functions have been merged into one.

Sample code in the programmer's guide that showed basic steps for
using Asymmetric crypto in DPDK has been replaced with literal includes
in the first patch of this patchset. This ensures all subsequent code
changes in the patchset are automatically reflected in the documentation.

v4:
  - Added new patch to add literal includes usage in programmer's guide.
  - Merged asym crypto session clear and free functions.
  - Reordered some function parameters.
  - Updated trace function for asym crypto session create.
  - Fixed cnxk clear, the PMD no longer needs to put private data
    back into a mempool.
  - Renamed struct field for max private session size.
  - Replaced __extension__ with RTE_STD_C11.
  - Moved some parameter validity checks to before functional code.
  - Reworded release note.
  - Removed mempool parameter from session configure function.
  - Removed docs code additions, these are included due to patch 1
    changing sample doc to use literal includes.
  - Initialised session variables as NULL.
  - Added possible error return values in user data API comment.

Ciara Power (5):
  doc: replace asym crypto code with literal includes
  crypto: use single buffer for asymmetric session
  crypto: hide asym session structure
  crypto: add asym session user data API
  crypto: modify return value for asym session create

 app/test-crypto-perf/cperf_ops.c             |  22 +-
 app/test-crypto-perf/cperf_test_throughput.c |   8 +-
 app/test/test_cryptodev_asym.c               | 380 ++++++-------------
 app/test/test_cryptodev_mod_test_vectors.h   |   4 +
 doc/guides/prog_guide/cryptodev_lib.rst      | 212 +++--------
 doc/guides/rel_notes/release_22_03.rst       |  14 +
 drivers/crypto/cnxk/cn10k_cryptodev_ops.c    |   6 +-
 drivers/crypto/cnxk/cn9k_cryptodev_ops.c     |   6 +-
 drivers/crypto/cnxk/cnxk_cryptodev_ops.c     |  21 +-
 drivers/crypto/cnxk/cnxk_cryptodev_ops.h     |   3 +-
 drivers/crypto/octeontx/otx_cryptodev_ops.c  |  30 +-
 drivers/crypto/openssl/rte_openssl_pmd.c     |   5 +-
 drivers/crypto/openssl/rte_openssl_pmd_ops.c |  24 +-
 drivers/crypto/qat/qat_asym.c                |  54 +--
 drivers/crypto/qat/qat_asym.h                |   5 +-
 lib/cryptodev/cryptodev_pmd.h                |  36 +-
 lib/cryptodev/cryptodev_trace_points.c       |   9 +-
 lib/cryptodev/rte_cryptodev.c                | 258 ++++++++-----
 lib/cryptodev/rte_cryptodev.h                | 133 ++++---
 lib/cryptodev/rte_cryptodev_trace.h          |  38 +-
 lib/cryptodev/version.map                    |   9 +-
 21 files changed, 517 insertions(+), 760 deletions(-)