DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH 0/3] crypto/security session framework rework
@ 2021-09-30 14:50 Akhil Goyal
  2021-09-30 14:50 ` [dpdk-dev] [PATCH 1/3] security: rework session framework Akhil Goyal
                   ` (3 more replies)
  0 siblings, 4 replies; 49+ messages in thread
From: Akhil Goyal @ 2021-09-30 14:50 UTC (permalink / raw)
  To: dev
  Cc: thomas, david.marchand, hemant.agrawal, anoobj,
	pablo.de.lara.guarch, fiona.trahe, declan.doherty, matan,
	g.singh, roy.fan.zhang, jianjay.zhou, asomalap, ruifeng.wang,
	konstantin.ananyev, radu.nicolau, ajit.khaparde, rnagadheeraj,
	adwivedi, ciara.power, Akhil Goyal

As discussed in last release deprecation notice,
crypto and security session framework are reworked
to reduce the need of two mempool objects and
remove the requirement to expose the rte_security_session
and rte_cryptodev_sym_session structures.

Similar work will need to be done for asymmetric sessions
as well.
Design methodology is explained in the patch description.

Please review this and help in filling the missing parts
for all the affected PMDs. The patches are compilable
and tested with dpdk-test app on CN9k platform.

Akhil Goyal (3):
  security: rework session framework
  drivers/net: temporary disable ixgbe and txgbe
  cryptodev: rework session framework

 app/test-crypto-perf/cperf.h                  |   1 -
 app/test-crypto-perf/cperf_ops.c              |  41 ++--
 app/test-crypto-perf/cperf_ops.h              |   6 +-
 app/test-crypto-perf/cperf_test_latency.c     |   5 +-
 app/test-crypto-perf/cperf_test_latency.h     |   1 -
 .../cperf_test_pmd_cyclecount.c               |   7 +-
 .../cperf_test_pmd_cyclecount.h               |   1 -
 app/test-crypto-perf/cperf_test_throughput.c  |   5 +-
 app/test-crypto-perf/cperf_test_throughput.h  |   1 -
 app/test-crypto-perf/cperf_test_verify.c      |   5 +-
 app/test-crypto-perf/cperf_test_verify.h      |   1 -
 app/test-crypto-perf/main.c                   |  29 +--
 app/test/test_cryptodev.c                     | 147 +++--------
 app/test/test_cryptodev.h                     |   1 -
 app/test/test_cryptodev_asym.c                |   1 -
 app/test/test_cryptodev_blockcipher.c         |   6 +-
 app/test/test_event_crypto_adapter.c          |  28 +--
 app/test/test_ipsec.c                         |  33 +--
 app/test/test_security.c                      | 229 ++++++++----------
 drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c  |  33 +--
 drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c    |   5 +-
 .../crypto/aesni_mb/rte_aesni_mb_pmd_ops.c    |  64 +----
 drivers/crypto/armv8/rte_armv8_pmd_ops.c      |  34 +--
 drivers/crypto/bcmfs/bcmfs_sym_session.c      |  36 +--
 drivers/crypto/bcmfs/bcmfs_sym_session.h      |   6 +-
 drivers/crypto/caam_jr/caam_jr.c              |  64 ++---
 drivers/crypto/ccp/ccp_pmd_ops.c              |  32 +--
 drivers/crypto/cnxk/cn10k_cryptodev_ops.c     |  22 +-
 drivers/crypto/cnxk/cn10k_ipsec.c             |  53 +---
 drivers/crypto/cnxk/cn9k_cryptodev_ops.c      |  20 +-
 drivers/crypto/cnxk/cn9k_ipsec.c              |  50 +---
 drivers/crypto/cnxk/cnxk_cryptodev_ops.c      |  61 ++---
 drivers/crypto/cnxk/cnxk_cryptodev_ops.h      |  13 +-
 drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c   |  68 ++----
 drivers/crypto/dpaa_sec/dpaa_sec.c            |  69 ++----
 drivers/crypto/kasumi/rte_kasumi_pmd_ops.c    |  34 +--
 drivers/crypto/mlx5/mlx5_crypto.c             |  24 +-
 drivers/crypto/mvsam/rte_mrvl_pmd.c           |   3 +-
 drivers/crypto/mvsam/rte_mrvl_pmd_ops.c       |  47 +---
 drivers/crypto/nitrox/nitrox_sym.c            |  31 +--
 drivers/crypto/null/null_crypto_pmd_ops.c     |  34 +--
 .../crypto/octeontx/otx_cryptodev_hw_access.h |   1 -
 drivers/crypto/octeontx/otx_cryptodev_ops.c   |  60 ++---
 drivers/crypto/octeontx2/otx2_cryptodev_ops.c |  54 ++---
 .../octeontx2/otx2_cryptodev_ops_helper.h     |  16 +-
 drivers/crypto/octeontx2/otx2_cryptodev_sec.c |  54 +----
 drivers/crypto/openssl/rte_openssl_pmd_ops.c  |  35 +--
 drivers/crypto/qat/qat_sym.c                  |   3 +-
 drivers/crypto/qat/qat_sym.h                  |   8 +-
 drivers/crypto/qat/qat_sym_session.c          |  50 +---
 drivers/crypto/qat/qat_sym_session.h          |  10 +-
 drivers/crypto/scheduler/scheduler_pmd_ops.c  |   9 +-
 drivers/crypto/snow3g/rte_snow3g_pmd_ops.c    |  34 +--
 drivers/crypto/virtio/virtio_cryptodev.c      |  31 +--
 drivers/crypto/zuc/rte_zuc_pmd_ops.c          |  35 +--
 .../octeontx2/otx2_evdev_crypto_adptr_rx.h    |   3 +-
 drivers/net/ixgbe/ixgbe_ipsec.c               |  36 +--
 drivers/net/meson.build                       |   4 +-
 drivers/net/octeontx2/otx2_ethdev_sec.c       |  51 +---
 drivers/net/octeontx2/otx2_ethdev_sec_tx.h    |   2 +-
 drivers/net/txgbe/txgbe_ipsec.c               |  36 +--
 examples/fips_validation/fips_dev_self_test.c |  32 +--
 examples/fips_validation/main.c               |  20 +-
 examples/ipsec-secgw/ipsec-secgw.c            |  72 +++---
 examples/ipsec-secgw/ipsec.c                  |  12 +-
 examples/ipsec-secgw/ipsec.h                  |   1 -
 examples/ipsec-secgw/ipsec_worker.c           |   4 -
 examples/l2fwd-crypto/main.c                  |  41 +---
 examples/vhost_crypto/main.c                  |  16 +-
 lib/cryptodev/cryptodev_pmd.h                 |   7 +-
 lib/cryptodev/rte_crypto.h                    |   2 +-
 lib/cryptodev/rte_crypto_sym.h                |   2 +-
 lib/cryptodev/rte_cryptodev.c                 |  73 ++++--
 lib/cryptodev/rte_cryptodev.h                 |  23 +-
 lib/cryptodev/rte_cryptodev_trace.h           |   5 +-
 lib/pipeline/rte_table_action.c               |   8 +-
 lib/pipeline/rte_table_action.h               |   2 +-
 lib/security/rte_security.c                   |  28 ++-
 lib/security/rte_security.h                   |  41 ++--
 lib/security/rte_security_driver.h            |  16 +-
 lib/vhost/rte_vhost_crypto.h                  |   3 -
 lib/vhost/vhost_crypto.c                      |   7 +-
 82 files changed, 665 insertions(+), 1633 deletions(-)

-- 
2.25.1


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