API changes are planned for 17.08 to made sessions agnostic to the underlaying devices, removing coupling with crypto PMDs, so a single session can be used on multiple devices.
It requires to change "struct rte_cryptodev_sym_session" to store more than one private data for devices, as well as remove redundant dev_id and dev_type. Effected public functions: - rte_cryptodev_sym_session_pool_create - rte_cryptodev_sym_session_create - rte_cryptodev_sym_session_free While session will not be directly associated with device, followed API will be changed adding uint8_t dev_id to the argument list: - rte_cryptodev_queue_pair_attach_sym_session - rte_cryptodev_queue_pair_detach_sym_session Signed-off-by: Tomasz Kulasek <tomaszx.kula...@intel.com> --- Detailed list of changes and scope of work is sent in the separate RFC: http://dpdk.org/dev/patchwork/patch/24091/ ("[dpdk-dev,RFC] cryptodev: make crypto session device independent") doc/guides/rel_notes/deprecation.rst | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index a3e7c72..5527c20 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -81,3 +81,24 @@ Deprecation Notices - ``rte_crpytodev_scheduler_mode_get``, replaced by ``rte_cryptodev_scheduler_mode_get`` - ``rte_crpytodev_scheduler_mode_set``, replaced by ``rte_cryptodev_scheduler_mode_set`` + +* cryptodev: API changes are planned for 17.08 for the sessions management + to make it agnostic to the underlying devices, removing coupling with + crypto PMDs, so a single session can be used on multiple devices. + + - ``struct rte_cryptodev_sym_session``, dev_id, dev_type will be removed, + _private field changed to the indirect array of private data pointers of + all supported devices + + An API of followed functions will be changed to allow operate on multiple + devices with one session: + + - ``rte_cryptodev_sym_session_create`` + - ``rte_cryptodev_sym_session_free`` + - ``rte_cryptodev_sym_session_pool_create`` + + While dev_id will not be stored in the ``struct rte_cryptodev_sym_session``, + directly, the change of followed API is required: + + - ``rte_cryptodev_queue_pair_attach_sym_session`` + - ``rte_cryptodev_queue_pair_detach_sym_session`` \ No newline at end of file -- 1.9.1