numam-dpdk/lib/pipeline
Akhil Goyal bdce2564db cryptodev: rework session framework
As per current design, rte_cryptodev_sym_session_create() and
rte_cryptodev_sym_session_init() use separate mempool objects
for a single session.
And structure rte_cryptodev_sym_session is not directly used
by the application, it may cause ABI breakage if the structure
is modified in future.

To address these two issues, the rte_cryptodev_sym_session_create
will take one mempool object that the session and session private
data are virtually/physically contiguous, and initializes both
fields. The API rte_cryptodev_sym_session_init is removed.

rte_cryptodev_sym_session_create will now return an opaque session
pointer which will be used by the app and other APIs.

In data path, opaque session pointer is attached to rte_crypto_op
and the PMD can call an internal library API to get the session
private data pointer based on the driver id.

Note: currently single session may be used by different device
drivers, given it is initialized by them. After the change the
session created by one device driver cannot be used or
reinitialized by another driver.

Signed-off-by: Akhil Goyal <gakhil@marvell.com>
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
Acked-by: Kai Ji <kai.ji@intel.com>
Tested-by: Gagandeep Singh <g.singh@nxp.com>
Tested-by: David Coyle <david.coyle@intel.com>
Tested-by: Kevin O'Sullivan <kevin.osullivan@intel.com>
2022-10-04 22:04:59 +02:00
..
meson.build build/windows: remove separate list of libs 2021-10-22 22:40:59 +02:00
rte_pipeline.c lib: remove unneeded header includes 2022-02-22 13:10:39 +01:00
rte_pipeline.h
rte_port_in_action.c lib: remove unneeded header includes 2022-02-22 13:10:39 +01:00
rte_port_in_action.h lib: document free functions 2022-06-24 14:50:34 +02:00
rte_swx_ctl.c pipeline: configure hash function for regular tables 2022-09-23 18:04:41 +02:00
rte_swx_ctl.h pipeline: support direct meters on control path 2022-09-24 11:35:34 +02:00
rte_swx_extern.h
rte_swx_pipeline_internal.h pipeline: add table entry ID read instruction 2022-09-24 11:35:25 +02:00
rte_swx_pipeline_spec.c pipeline: configure hash function for learner tables 2022-09-23 18:04:42 +02:00
rte_swx_pipeline_spec.h pipeline: configure hash function for learner tables 2022-09-23 18:04:42 +02:00
rte_swx_pipeline.c pipeline: support direct meters on control path 2022-09-24 11:35:34 +02:00
rte_swx_pipeline.h pipeline: configure hash function for learner tables 2022-09-23 18:04:42 +02:00
rte_table_action.c cryptodev: rework session framework 2022-10-04 22:04:59 +02:00
rte_table_action.h
version.map pipeline: support direct meters on control path 2022-09-24 11:35:34 +02:00