[dpdk-dev] [dpdk-dev v2 0/3] crypto/qat: add symmetric crypto data-path APIs

Fan Zhang roy.fan.zhang at intel.com
Thu Jun 25 15:31:35 CEST 2020


This patch adds symmetric crypto data-path APIs for QAT PMD. QAT direct
symmetric crypto data-path APIs are a set of APIs that provide
more HW friendly enqueue/dequeue data-path functions as an alternative
approach to ``rte_cryptodev_enqueue_burst`` and
``rte_cryptodev_dequeue_burst``. The APIs are designed for external
libraries/applications that want to use QAT as symmetric crypto data-path
accelerator but with their own data structures. With the APIs the
cycle cost spent on conversion from their data structure to DPDK cryptodev
operations can be reduced, and the dependency to DPDK crypto operation
mempool can be reliefed.

It is expected that the user can develop close-to-native performance
symmetric crypto data-path implementations with the functions provided
in this patchset.

Signed-off-by: Fan Zhang <roy.fan.zhang at intel.com>
Signed-off-by: Piotr Bronowski <piotrx.bronowski at intel.com>

v2:
- Used a structure to simplify parameters.
- Added unit tests.
- Added documentation.

Fan Zhang (3):
  crypto/qat: add data-path APIs
  test/crypto: add unit-test for QAT direct APIs
  doc: add QAT direct APIs guide

 app/test/Makefile                            |   4 +
 app/test/meson.build                         |   1 +
 app/test/test_cryptodev.c                    | 371 +++++++++-
 app/test/test_cryptodev.h                    |   6 +
 app/test/test_cryptodev_blockcipher.c        |  50 +-
 doc/guides/prog_guide/cryptodev_lib.rst      | 272 +++++++
 drivers/common/qat/Makefile                  |   8 +-
 drivers/common/qat/qat_qp.c                  |   4 +-
 drivers/common/qat/qat_qp.h                  |   3 +
 drivers/compress/qat/rte_pmd_qat_version.map |  11 +
 drivers/crypto/qat/meson.build               |   5 +
 drivers/crypto/qat/qat_sym.c                 |   1 -
 drivers/crypto/qat/qat_sym_frame.c           | 701 +++++++++++++++++++
 drivers/crypto/qat/qat_sym_frame.h           | 242 +++++++
 14 files changed, 1636 insertions(+), 43 deletions(-)
 create mode 100644 drivers/crypto/qat/qat_sym_frame.c
 create mode 100644 drivers/crypto/qat/qat_sym_frame.h

-- 
2.20.1



More information about the dev mailing list