The application may want to store private data along with the rte_crypto_op that is transparent to the rte_cryptodev layer. For e.g., If an eventdev based application is submitting a crypto session-less operation and wants to indicate event information required to construct a new event that will be enqueued to eventdev after completion of the crypto operation. This patch provides a mechanism for the application to associate this information with the rte_crypto_op in session-less mode.
Signed-off-by: Abhinandan Gujjar <abhinandan.guj...@intel.com> Signed-off-by: Nikhil Rao <nikhil....@intel.com> Acked-by: Pablo de Lara <pablo.de.lara.gua...@intel.com> --- lib/librte_cryptodev/rte_crypto.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/librte_cryptodev/rte_crypto.h b/lib/librte_cryptodev/rte_crypto.h index 95cf861..2540426 100644 --- a/lib/librte_cryptodev/rte_crypto.h +++ b/lib/librte_cryptodev/rte_crypto.h @@ -84,8 +84,14 @@ struct rte_crypto_op { */ uint8_t sess_type; /**< operation session type */ + uint16_t private_data_offset; + /**< Offset to indicate start of private data (if any). The offset + * is counted from the start of the rte_crypto_op including IV. + * The private data may be used by the application to store + * information which should remain untouched in the library/driver + */ - uint8_t reserved[5]; + uint8_t reserved[3]; /**< Reserved bytes to fill 64 bits for future additions */ struct rte_mempool *mempool; /**< crypto operation mempool which operation is allocated from */ -- 1.9.1