Hi Fan, > The Crypto Raw data-path APIs are a set of APIs are designed to enable > externel libraries/applications which want to leverage the cryptographic > processing provided by DPDK crypto PMDs through the cryptodev API but in a > manner that is not dependent on native DPDK data structures (eg. rte_mbuf, > rte_crypto_op, ... etc) in their data-path implementation. > > The raw data-path APIs have the following advantages: > - External data structure friendly design. The new APIs uses the operation > descriptor ``struct rte_crypto_sym_vec`` that supports raw data pointer and > IOVA addresses as input. Moreover, the APIs does not require the user to > allocate the descriptor from mempool, nor requiring mbufs to describe input > data's virtual and IOVA addresses. All these features made the translation > from user's own data structure into the descriptor easier and more efficient. > - Flexible enqueue and dequeue operation. The raw data-path APIs gives the > user more control to the enqueue and dequeue operations, including the > capability of precious enqueue/dequeue count, abandoning enqueue or dequeue > at any time, and operation status translation and set on the fly. > > V10: > - Changed rte_crypto_sym_vec structure to support both sync cpu_crypto and > async raw data-path API. > - Changed documentation. > - Changed API names. > - Changed the way data-path context is initialized. > - Added new API to attach session or xform to existing context. > - Changed QAT PMD accordingly with new APIs. > - Changed unit test to use the device feature flag for the raw API tests. > I have some comment on the V10, please revert asap so that these can be merged in RC1.
@konstantin.anan...@intel.com: Could you please have a look at the 2/4 patch as well? Regards, Akhil