> 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.
>
> v6:
> - Reordered variable declarations to follow cnxk file format.
> - Added fix for crypto perf app asymmetric modex operation, there
> is no longer a need for private mempool, and the
> rte_cryptodev_asym_session_pool_create API should be used.
>
> v5:
> - Modified which patch the sess parameter is passed to session create
> trace function.
> - Reworded create session function description.
> - Removed get API for session private data, can be accessed directly.
> - Modified test application to create a session mempool for
> TEST_NUM_SESSIONS rather than TEST_NUM_SESSIONS * 2.
>
> 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.
>
> v3:
> - Added documentation in relevant patches.
> - Fixed setting user data size.
> - Fixed hiding structure, it should not be hidden from PMDs.
> - Fixed some other small formatting issues.
> - Increased size of max_priv_session_sz to uint16_t.
> - Removed trace for asym session init function that was
> previously removed.
>
> 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-crypto-perf/main.c | 26 +-
> 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 | 8 +-
> drivers/crypto/cnxk/cn9k_cryptodev_ops.c | 8 +-
> drivers/crypto/cnxk/cnxk_cryptodev_ops.c | 22 +-
> drivers/crypto/cnxk/cnxk_cryptodev_ops.h | 3 +-
> drivers/crypto/octeontx/otx_cryptodev_ops.c | 32 +-
> drivers/crypto/openssl/rte_openssl_pmd.c | 4 +-
> 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 | 136 ++++---
> lib/cryptodev/rte_cryptodev_trace.h | 38 +-
> lib/cryptodev/version.map | 9 +-
> 22 files changed, 526 insertions(+), 786 deletions(-)
>
I see following warning in compilation
../app/test-crypto-perf/main.c: In function 'create_asym_op_pool_socket':
../app/test-crypto-perf/main.c:72:36: warning: unused parameter 'dev_id'
[-Wunused-parameter]
72 | create_asym_op_pool_socket(uint8_t dev_id, int32_t socket_id,
| ~~~~~~~~^~~~~~