[dpdk-dev,v3,08/12] cryptodev: remove mempool from session
Checks
Commit Message
From: Slawomir Mrozowicz <slawomirx.mrozowicz@intel.com>
Mempool pointer can be obtained from the object itself,
which means that it is not required to actually store the pointer
in the session.
Signed-off-by: Slawomir Mrozowicz <slawomirx.mrozowicz@intel.com>
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
---
doc/guides/rel_notes/release_17_08.rst | 1 +
lib/librte_cryptodev/rte_cryptodev.c | 7 +++----
lib/librte_cryptodev/rte_cryptodev.h | 6 ------
3 files changed, 4 insertions(+), 10 deletions(-)
@@ -165,6 +165,7 @@ API Changes
the new parameter ``device id``.
* ``dev_id`` field has been removed from ``rte_cryptodev_sym_session`` structure.
* ``driver_id`` field has been removed from ``rte_cryptodev_sym_session`` structure.
+ * Mempool pointer ``mp`` has been removed from ``rte_cryptodev_sym_session`` structure.
ABI Changes
@@ -1026,8 +1026,6 @@ rte_cryptodev_sym_session_init(struct rte_mempool *mp,
{
memset(sess, 0, mp->elt_size);
- sess->mp = mp;
-
if (dev->dev_ops->session_initialize)
(*dev->dev_ops->session_initialize)(mp, sess);
}
@@ -1065,7 +1063,7 @@ rte_cryptodev_sym_session_create(uint8_t dev_id,
dev_id);
/* Return session to mempool */
- rte_mempool_put(sess->mp, _sess);
+ rte_mempool_put(dev->data->session_pool, _sess);
return NULL;
}
@@ -1137,7 +1135,8 @@ rte_cryptodev_sym_session_free(uint8_t dev_id,
dev->dev_ops->session_clear(dev, (void *)sess->_private);
/* Return session to mempool */
- rte_mempool_put(sess->mp, (void *)sess);
+ struct rte_mempool *mp = rte_mempool_from_obj(sess);
+ rte_mempool_put(mp, (void *)sess);
return NULL;
}
@@ -797,12 +797,6 @@ rte_cryptodev_enqueue_burst(uint8_t dev_id, uint16_t qp_id,
/** Cryptodev symmetric crypto session */
struct rte_cryptodev_sym_session {
RTE_STD_C11
- struct {
- struct rte_mempool *mp;
- /**< Mempool session allocated from */
- } __rte_aligned(8);
- /**< Public symmetric session details */
-
__extension__ char _private[0];
/**< Private session material */
};