From mboxrd@z Thu Jan 1 00:00:00 1970 From: Abhinandan Gujjar Subject: [RFC v3, 1/3] cryptodev: set private data for session-less mode Date: Thu, 1 Feb 2018 15:00:05 +0530 Message-ID: <1517477405-169206-1-git-send-email-abhinandan.gujjar@intel.com> Cc: dev@dpdk.org, narender.vangati@intel.com, Abhinandan Gujjar , Nikhil Rao To: declan.doherty@intel.com, akhil.goyal@nxp.com, pablo.de.lara.guarch@intel.com, Jerin.JacobKollanukkaran@cavium.com Return-path: Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by dpdk.org (Postfix) with ESMTP id BBD78101B for ; Thu, 1 Feb 2018 10:30:10 +0100 (CET) List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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 Signed-off-by: Nikhil Rao --- Notes: V3: 1. Added separate patch for session-less private data 2. Added more information on offset V2: 1. Removed enum rte_crypto_op_private_data_type 2. Corrected formatting 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