DPDK patches and discussions
 help / color / mirror / Atom feed
* [PATCH 0/3] cryptodev: sym session framework rework
@ 2022-08-29 16:06 Fan Zhang
  2022-08-29 16:06 ` [PATCH 1/3] cryptodev: rework session framework Fan Zhang
                   ` (3 more replies)
  0 siblings, 4 replies; 47+ messages in thread
From: Fan Zhang @ 2022-08-29 16:06 UTC (permalink / raw)
  To: dev
  Cc: gakhil, maxime.coquelin, chandu, ruifeng.wang, ajit.khaparde,
	anoobj, pablo.de.lara.guarch, matan, g.singh, jianjay.zhou,
	Fan Zhang

This patchset reworks the symmetric crypto session data structure to
use a single virtual/physical contiguous buffer for symmetric crypto
session and driver private data. In addition the session data
structure is now private. The session is represented as an opaque
pointer in the application.

With the change the session is no longer supported to be accessed
by multiple device drivers. For the same reason
rte_cryptodev_sym_session_init/clear APIs are deprecated as
rte_cryptodev_sym_session_create/free will initialize and
clear the driver specific data field.

Fan Zhang (3):
  cryptodev: rework session framework
  crypto/scheduler: use unified session
  cryptodev: hide sym session structure

 app/test-crypto-perf/cperf_ops.c              |  21 +-
 app/test-crypto-perf/cperf_test_latency.c     |   6 +-
 .../cperf_test_pmd_cyclecount.c               |   5 +-
 app/test-crypto-perf/cperf_test_throughput.c  |   6 +-
 app/test-crypto-perf/cperf_test_verify.c      |   6 +-
 app/test-crypto-perf/main.c                   |  29 +-
 app/test-eventdev/test_perf_common.c          |  35 +-
 app/test-eventdev/test_perf_common.h          |   1 -
 app/test/test_cryptodev.c                     | 302 +++++-------------
 app/test/test_cryptodev_blockcipher.c         |  16 +-
 app/test/test_event_crypto_adapter.c          |  35 +-
 app/test/test_ipsec.c                         |  42 +--
 app/test/test_ipsec_perf.c                    |   4 +-
 doc/guides/prog_guide/cryptodev_lib.rst       |  16 +-
 doc/guides/rel_notes/deprecation.rst          |   9 +
 doc/guides/rel_notes/release_22_11.rst        |   7 +
 drivers/crypto/armv8/rte_armv8_pmd.c          |  21 +-
 drivers/crypto/armv8/rte_armv8_pmd_ops.c      |  32 +-
 drivers/crypto/bcmfs/bcmfs_sym_session.c      |  38 +--
 drivers/crypto/bcmfs/bcmfs_sym_session.h      |   3 +-
 drivers/crypto/caam_jr/caam_jr.c              |  28 +-
 drivers/crypto/ccp/ccp_crypto.c               |  58 +---
 drivers/crypto/ccp/ccp_pmd_ops.c              |  32 +-
 drivers/crypto/ccp/ccp_pmd_private.h          |   2 -
 drivers/crypto/ccp/rte_ccp_pmd.c              |  29 +-
 drivers/crypto/cnxk/cn10k_cryptodev_ops.c     |  36 +--
 drivers/crypto/cnxk/cn9k_cryptodev_ops.c      |  31 +-
 drivers/crypto/cnxk/cnxk_cryptodev_ops.c      |  54 +---
 drivers/crypto/cnxk/cnxk_cryptodev_ops.h      |  14 +-
 drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c   |  31 +-
 drivers/crypto/dpaa2_sec/dpaa2_sec_raw_dp.c   |   3 +-
 drivers/crypto/dpaa_sec/dpaa_sec.c            |  37 +--
 drivers/crypto/dpaa_sec/dpaa_sec_raw_dp.c     |   4 +-
 drivers/crypto/ipsec_mb/ipsec_mb_ops.c        |  34 +-
 drivers/crypto/ipsec_mb/ipsec_mb_private.h    |  41 ++-
 drivers/crypto/ipsec_mb/pmd_aesni_gcm.c       |  48 +--
 drivers/crypto/ipsec_mb/pmd_aesni_mb.c        |  26 +-
 drivers/crypto/ipsec_mb/pmd_chacha_poly.c     |   4 -
 drivers/crypto/ipsec_mb/pmd_kasumi.c          |  10 +-
 drivers/crypto/ipsec_mb/pmd_snow3g.c          |   9 +-
 drivers/crypto/ipsec_mb/pmd_zuc.c             |   4 -
 drivers/crypto/mlx5/mlx5_crypto.c             |  26 +-
 drivers/crypto/mvsam/rte_mrvl_pmd.c           |   8 +-
 drivers/crypto/mvsam/rte_mrvl_pmd_ops.c       |  21 +-
 drivers/crypto/nitrox/nitrox_sym.c            |  39 +--
 drivers/crypto/null/null_crypto_pmd.c         |  19 +-
 drivers/crypto/null/null_crypto_pmd_ops.c     |  33 +-
 drivers/crypto/null/null_crypto_pmd_private.h |   2 -
 .../crypto/octeontx/otx_cryptodev_hw_access.h |   1 -
 drivers/crypto/octeontx/otx_cryptodev_ops.c   |  67 +---
 drivers/crypto/openssl/openssl_pmd_private.h  |   2 -
 drivers/crypto/openssl/rte_openssl_pmd.c      |  24 +-
 drivers/crypto/openssl/rte_openssl_pmd_ops.c  |  29 +-
 drivers/crypto/qat/qat_sym.c                  |  10 +-
 drivers/crypto/qat/qat_sym.h                  |   4 +-
 drivers/crypto/qat/qat_sym_session.c          |  40 +--
 drivers/crypto/qat/qat_sym_session.h          |   6 +-
 drivers/crypto/scheduler/scheduler_failover.c |  19 +-
 .../crypto/scheduler/scheduler_multicore.c    |  17 +
 .../scheduler/scheduler_pkt_size_distr.c      |  84 +++--
 drivers/crypto/scheduler/scheduler_pmd_ops.c  |  87 ++++-
 .../crypto/scheduler/scheduler_pmd_private.h  | 120 ++++++-
 .../crypto/scheduler/scheduler_roundrobin.c   |  11 +-
 drivers/crypto/virtio/virtio_cryptodev.c      |  40 +--
 drivers/crypto/virtio/virtio_rxtx.c           |   3 +-
 examples/fips_validation/fips_dev_self_test.c |  30 +-
 examples/fips_validation/main.c               |  35 +-
 examples/ipsec-secgw/ipsec-secgw.c            |  10 +-
 examples/ipsec-secgw/ipsec.c                  |   7 +-
 examples/l2fwd-crypto/main.c                  |  54 +---
 examples/vhost_crypto/main.c                  |  16 +-
 lib/cryptodev/cryptodev_pmd.h                 |  59 ++--
 lib/cryptodev/cryptodev_trace_points.c        |   6 -
 lib/cryptodev/rte_cryptodev.c                 | 280 ++++++----------
 lib/cryptodev/rte_cryptodev.h                 | 153 +++------
 lib/cryptodev/rte_cryptodev_trace.h           |  35 +-
 lib/cryptodev/version.map                     |   6 -
 lib/ipsec/rte_ipsec_group.h                   |   5 +-
 lib/ipsec/ses.c                               |   3 +-
 lib/pipeline/rte_table_action.c               |  10 +-
 lib/vhost/rte_vhost_crypto.h                  |   3 -
 lib/vhost/vhost_crypto.c                      |  28 +-
 82 files changed, 910 insertions(+), 1711 deletions(-)

-- 
2.34.1


^ permalink raw reply	[flat|nested] 47+ messages in thread

end of thread, other threads:[~2022-09-28 15:30 UTC | newest]

Thread overview: 47+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-29 16:06 [PATCH 0/3] cryptodev: sym session framework rework Fan Zhang
2022-08-29 16:06 ` [PATCH 1/3] cryptodev: rework session framework Fan Zhang
2022-09-15  7:07   ` [EXT] " Akhil Goyal
2022-09-15  7:26     ` Akhil Goyal
2022-08-29 16:06 ` [PATCH 2/3] crypto/scheduler: use unified session Fan Zhang
2022-09-15  7:06   ` [EXT] " Akhil Goyal
2022-09-15  7:23     ` Akhil Goyal
2022-09-18 13:01   ` Akhil Goyal
2022-08-29 16:06 ` [PATCH 3/3] cryptodev: hide sym session structure Fan Zhang
2022-09-18 13:19   ` [EXT] " Akhil Goyal
2022-09-21 15:02 ` [PATCH v2 0/6] crypto/security session framework rework Akhil Goyal
2022-09-21 15:02   ` [PATCH v2 1/6] cryptodev: rework session framework Akhil Goyal
2022-09-22 14:06     ` Ji, Kai
2022-09-21 15:02   ` [PATCH v2 2/6] crypto/scheduler: use unified session Akhil Goyal
2022-09-22 14:04     ` Ji, Kai
2022-09-21 15:02   ` [PATCH v2 3/6] cryptodev: hide sym session structure Akhil Goyal
2022-09-22 13:49     ` Ji, Kai
2022-09-21 15:02   ` [PATCH v2 4/6] security: remove priv mempool usage Akhil Goyal
2022-09-21 15:02   ` [PATCH v2 5/6] drivers/crypto: support security session get size op Akhil Goyal
2022-09-22 13:52     ` Ji, Kai
2022-09-21 15:02   ` [PATCH v2 6/6] security: hide session structure Akhil Goyal
2022-09-21 15:11   ` [PATCH v2 0/6] crypto/security session framework rework Akhil Goyal
2022-09-23 13:00     ` Coyle, David
2022-09-23  9:29   ` Gagandeep Singh
2022-09-24 16:35   ` [PATCH v3 " Akhil Goyal
2022-09-24 16:35     ` [PATCH v3 1/6] cryptodev: rework session framework Akhil Goyal
2022-09-24 16:35     ` [PATCH v3 2/6] crypto/scheduler: use unified session Akhil Goyal
2022-09-24 16:35     ` [PATCH v3 3/6] cryptodev: hide sym session structure Akhil Goyal
2022-09-24 16:35     ` [PATCH v3 4/6] security: remove priv mempool usage Akhil Goyal
2022-09-24 16:35     ` [PATCH v3 5/6] drivers/crypto: support security session get size op Akhil Goyal
2022-09-24 16:35     ` [PATCH v3 6/6] security: hide session structure Akhil Goyal
2022-09-24 16:39     ` [PATCH v3 0/6] crypto/security session framework rework Akhil Goyal
2022-09-26 10:09     ` Ruifeng Wang
2022-09-26 10:12       ` Akhil Goyal
2022-09-26 19:14     ` [PATCH v4 " Akhil Goyal
2022-09-26 19:14       ` [PATCH v4 1/6] cryptodev: rework session framework Akhil Goyal
2022-09-26 19:14       ` [PATCH v4 2/6] crypto/scheduler: use unified session Akhil Goyal
2022-09-27 11:03         ` Ji, Kai
2022-09-27 19:25           ` Akhil Goyal
2022-09-28 12:56             ` Akhil Goyal
2022-09-28 15:29               ` Ji, Kai
2022-09-26 19:14       ` [PATCH v4 3/6] cryptodev: hide sym session structure Akhil Goyal
2022-09-26 19:14       ` [PATCH v4 4/6] security: remove priv mempool usage Akhil Goyal
2022-09-26 19:14       ` [PATCH v4 5/6] drivers/crypto: support security session get size op Akhil Goyal
2022-09-26 19:14       ` [PATCH v4 6/6] security: hide session structure Akhil Goyal
2022-09-26 19:23       ` [PATCH v4 0/6] crypto/security session framework rework Akhil Goyal
2022-09-27  3:27       ` Ruifeng Wang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).