bdce2564db
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> |
||
---|---|---|
.. | ||
main.c | ||
Makefile | ||
meson.build |