[EXT] [PATCH 1/3] cryptodev: rework session framework

Akhil Goyal gakhil at marvell.com
Thu Sep 15 09:07:54 CEST 2022


> 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: Fan Zhang <roy.fan.zhang at intel.com>
> Signed-off-by: Akhil Goyal <gakhil at marvell.com>

Please fix compilation for unused function ipsec_mb_fill_error_code


More information about the dev mailing list