From: Hemant Agrawal <hemant.agrawal@nxp.com>
To: Akhil Goyal <gakhil@marvell.com>, "dev@dpdk.org" <dev@dpdk.org>
Cc: "thomas@monjalon.net" <thomas@monjalon.net>,
"david.marchand@redhat.com" <david.marchand@redhat.com>,
"anoobj@marvell.com" <anoobj@marvell.com>,
"pablo.de.lara.guarch@intel.com" <pablo.de.lara.guarch@intel.com>,
"fiona.trahe@intel.com" <fiona.trahe@intel.com>,
"declan.doherty@intel.com" <declan.doherty@intel.com>,
"matan@nvidia.com" <matan@nvidia.com>,
Gagandeep Singh <G.Singh@nxp.com>,
"roy.fan.zhang@intel.com" <roy.fan.zhang@intel.com>,
"jianjay.zhou@huawei.com" <jianjay.zhou@huawei.com>,
"asomalap@amd.com" <asomalap@amd.com>,
"ruifeng.wang@arm.com" <ruifeng.wang@arm.com>,
"konstantin.ananyev@intel.com" <konstantin.ananyev@intel.com>,
"radu.nicolau@intel.com" <radu.nicolau@intel.com>,
"ajit.khaparde@broadcom.com" <ajit.khaparde@broadcom.com>,
"rnagadheeraj@marvell.com" <rnagadheeraj@marvell.com>,
"adwivedi@marvell.com" <adwivedi@marvell.com>,
"ciara.power@intel.com" <ciara.power@intel.com>,
"haiyue.wang@intel.com" <haiyue.wang@intel.com>,
"jiawenwu@trustnetic.com" <jiawenwu@trustnetic.com>,
"jianwang@trustnetic.com" <jianwang@trustnetic.com>
Subject: Re: [dpdk-dev] [PATCH v3 0/8] crypto/security session framework rework
Date: Wed, 20 Oct 2021 14:36:33 +0000 [thread overview]
Message-ID: <DU2PR04MB8630517C4C4D97158874975189BE9@DU2PR04MB8630.eurprd04.prod.outlook.com> (raw)
In-Reply-To: <20211018213452.2734720-1-gakhil@marvell.com>
Series-
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Akhil Goyal
> Sent: Tuesday, October 19, 2021 3:05 AM
> To: dev@dpdk.org
> Cc: thomas@monjalon.net; david.marchand@redhat.com; Hemant Agrawal
> <hemant.agrawal@nxp.com>; anoobj@marvell.com;
> pablo.de.lara.guarch@intel.com; fiona.trahe@intel.com;
> declan.doherty@intel.com; matan@nvidia.com; Gagandeep Singh
> <G.Singh@nxp.com>; roy.fan.zhang@intel.com; jianjay.zhou@huawei.com;
> asomalap@amd.com; ruifeng.wang@arm.com;
> konstantin.ananyev@intel.com; radu.nicolau@intel.com;
> ajit.khaparde@broadcom.com; rnagadheeraj@marvell.com;
> adwivedi@marvell.com; ciara.power@intel.com; haiyue.wang@intel.com;
> jiawenwu@trustnetic.com; jianwang@trustnetic.com; Akhil Goyal
> <gakhil@marvell.com>
> Subject: [dpdk-dev] [PATCH v3 0/8] crypto/security session framework
> rework
> Importance: High
>
> 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.
> Design methodology is explained in the patch description.
>
> Similar work will need to be done for asymmetric sessions as well.
> Asymmetric session need another rework and is postponed to next release.
> Since it is still in experimental stage, we can modify the APIs in next release as
> well.
>
> The patches are compilable with all affected PMDs and tested with dpdk-test
> and test-crypto-perf app on CN9k platform.
>
> The series is rebased over "cryptodev: hide internal structures"
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatch
> work.dpdk.org%2Fproject%2Fdpdk%2Flist%2F%3Fseries%3D19749&dat
> a=04%7C01%7Chemant.agrawal%40nxp.com%7C670e1914f95c49cbd24608d
> 9927f2b28%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C6377018
> 97169217767%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJ
> QIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=KPG
> ZGoNXdfucnr3yA422eGc6EO%2BdXqCj3VSo7IlbX94%3D&reserved=0
>
> Changes in v3
> - rebased over next-crypto TOT
> - Release notes updated and deprecation notice removed.
> - Documentation updates.
> - fix session less crypto
> - fix asym crypto issue for qp setup
> - add sess_iova param to PMD session configure APIs to pass physical address
> of session pointer.
> - rework cnxk net PMD based on the new session framework.
> - added missing op to get size of security session private data
>
> Changes in v2:
> - Added new parameter iova in PMD session configure APIs for
> session priv pointer to be used in QAT/CNXK/etc PMDs.
> - Hide rte_cryptodev_sym_session and rte_security_session structs.
> - Added compilation workaround for net PMDs(ixgbe/txgbe)
> for inline ipsec.
> Patches with actual fix is beynd the scope of this patchset.
> - Added inline APIs to access the opaque data and fast metadata.
> - Remove commented code.
>
> TODO
> - Asym APIs - postponed for next release.
>
>
> Akhil Goyal (8):
> security: rework session framework
> security: hide security session struct
> net/cnxk: rework security session framework
> security: pass session iova in PMD sess create
> drivers/crypto: support security session get size op
> cryptodev: rework session framework
> cryptodev: hide sym session structure
> cryptodev: pass session iova in configure session
>
> app/test-crypto-perf/cperf.h | 1 -
> app/test-crypto-perf/cperf_ops.c | 46 ++--
> 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 | 3 +-
> app/test/test_cryptodev_blockcipher.c | 6 +-
> app/test/test_event_crypto_adapter.c | 28 +--
> app/test/test_ipsec.c | 34 +--
> app/test/test_ipsec_perf.c | 4 +-
> app/test/test_security.c | 196 ++++--------------
> doc/guides/prog_guide/cryptodev_lib.rst | 10 +-
> doc/guides/prog_guide/rte_security.rst | 11 +-
> doc/guides/rel_notes/deprecation.rst | 9 -
> doc/guides/rel_notes/release_21_11.rst | 14 ++
> drivers/crypto/armv8/armv8_pmd_private.h | 2 -
> drivers/crypto/armv8/rte_armv8_pmd.c | 21 +-
> 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 | 71 ++-----
> drivers/crypto/ccp/ccp_pmd_ops.c | 32 +--
> drivers/crypto/ccp/ccp_pmd_private.h | 2 -
> drivers/crypto/ccp/rte_ccp_pmd.c | 24 +--
> drivers/crypto/cnxk/cn10k_cryptodev_ops.c | 24 +--
> drivers/crypto/cnxk/cn10k_ipsec.c | 53 +----
> drivers/crypto/cnxk/cn9k_cryptodev_ops.c | 20 +-
> drivers/crypto/cnxk/cn9k_ipsec.c | 75 +++----
> drivers/crypto/cnxk/cnxk_cryptodev_ops.c | 61 ++----
> drivers/crypto/cnxk/cnxk_cryptodev_ops.h | 16 +-
> drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c | 76 ++-----
> drivers/crypto/dpaa2_sec/dpaa2_sec_raw_dp.c | 3 +-
> drivers/crypto/dpaa_sec/dpaa_sec.c | 75 ++-----
> drivers/crypto/dpaa_sec/dpaa_sec_raw_dp.c | 3 +-
> drivers/crypto/ipsec_mb/ipsec_mb_ops.c | 32 +--
> drivers/crypto/ipsec_mb/ipsec_mb_private.h | 29 +--
> drivers/crypto/ipsec_mb/pmd_aesni_gcm.c | 23 +-
> drivers/crypto/ipsec_mb/pmd_aesni_mb.c | 40 ++--
> drivers/crypto/ipsec_mb/pmd_chacha_poly.c | 1 -
> drivers/crypto/ipsec_mb/pmd_kasumi.c | 1 -
> drivers/crypto/ipsec_mb/pmd_snow3g.c | 1 -
> drivers/crypto/ipsec_mb/pmd_zuc.c | 1 -
> drivers/crypto/mlx5/mlx5_crypto.c | 25 +--
> drivers/crypto/mvsam/mrvl_pmd_private.h | 3 -
> drivers/crypto/mvsam/rte_mrvl_pmd.c | 3 +-
> drivers/crypto/mvsam/rte_mrvl_pmd_ops.c | 55 ++---
> drivers/crypto/nitrox/nitrox_sym.c | 33 +--
> drivers/crypto/null/null_crypto_pmd.c | 20 +-
> drivers/crypto/null/null_crypto_pmd_ops.c | 34 +--
> drivers/crypto/null/null_crypto_pmd_private.h | 2 -
> .../crypto/octeontx/otx_cryptodev_hw_access.h | 1 -
> drivers/crypto/octeontx/otx_cryptodev_ops.c | 68 +++---
> drivers/crypto/octeontx2/otx2_cryptodev_ops.c | 63 +++---
> .../octeontx2/otx2_cryptodev_ops_helper.h | 16 +-
> drivers/crypto/octeontx2/otx2_cryptodev_qp.h | 2 -
> drivers/crypto/octeontx2/otx2_cryptodev_sec.c | 77 +++----
> drivers/crypto/openssl/openssl_pmd_private.h | 2 -
> drivers/crypto/openssl/rte_openssl_pmd.c | 18 +-
> 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_pmd.c | 1 +
> drivers/crypto/qat/qat_sym_session.c | 72 ++-----
> drivers/crypto/qat/qat_sym_session.h | 17 +-
> drivers/crypto/scheduler/scheduler_pmd_ops.c | 10 +-
> drivers/crypto/virtio/virtio_cryptodev.c | 32 +--
> .../octeontx2/otx2_evdev_crypto_adptr_rx.h | 3 +-
> drivers/net/cnxk/cn10k_ethdev_sec.c | 64 +++---
> drivers/net/cnxk/cn9k_ethdev_sec.c | 59 ++----
> drivers/net/cnxk/cnxk_ethdev.c | 6 +-
> drivers/net/cnxk/cnxk_ethdev.h | 6 -
> drivers/net/cnxk/cnxk_ethdev_sec.c | 21 --
> drivers/net/ixgbe/ixgbe_ipsec.c | 38 +---
> drivers/net/octeontx2/otx2_ethdev_sec.c | 52 ++---
> drivers/net/octeontx2/otx2_ethdev_sec_tx.h | 2 +-
> drivers/net/txgbe/txgbe_ipsec.c | 38 +---
> examples/fips_validation/fips_dev_self_test.c | 32 +--
> examples/fips_validation/main.c | 20 +-
> examples/ipsec-secgw/ipsec-secgw.c | 40 ----
> 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 | 33 ++-
> lib/cryptodev/rte_crypto.h | 2 +-
> lib/cryptodev/rte_crypto_sym.h | 2 +-
> lib/cryptodev/rte_cryptodev.c | 91 ++++----
> lib/cryptodev/rte_cryptodev.h | 70 +++----
> lib/cryptodev/rte_cryptodev_trace.h | 16 +-
> lib/ipsec/rte_ipsec.h | 4 +-
> lib/ipsec/rte_ipsec_group.h | 13 +-
> lib/ipsec/ses.c | 6 +-
> lib/pipeline/rte_table_action.c | 8 +-
> lib/pipeline/rte_table_action.h | 2 +-
> lib/security/rte_security.c | 32 +--
> lib/security/rte_security.h | 85 +++++---
> lib/security/rte_security_driver.h | 31 ++-
> lib/vhost/rte_vhost_crypto.h | 3 -
> lib/vhost/vhost_crypto.c | 7 +-
> 109 files changed, 913 insertions(+), 1880 deletions(-)
>
> --
> 2.25.1
next prev parent reply other threads:[~2021-10-20 14:36 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-30 14:50 [dpdk-dev] [PATCH 0/3] " Akhil Goyal
2021-09-30 14:50 ` [dpdk-dev] [PATCH 1/3] security: rework session framework Akhil Goyal
2021-09-30 14:50 ` [dpdk-dev] [PATCH 2/3] drivers/net: temporary disable ixgbe and txgbe Akhil Goyal
2021-10-12 12:26 ` Zhang, Roy Fan
2021-10-12 12:29 ` Akhil Goyal
2021-10-12 13:32 ` Zhang, Roy Fan
2021-09-30 14:50 ` [dpdk-dev] [PATCH 3/3] cryptodev: rework session framework Akhil Goyal
2021-10-01 15:53 ` Zhang, Roy Fan
2021-10-04 19:07 ` Akhil Goyal
2021-10-13 19:22 ` [dpdk-dev] [PATCH v2 0/7] crypto/security session framework rework Akhil Goyal
2021-10-13 19:22 ` [dpdk-dev] [PATCH v2 1/7] security: rework session framework Akhil Goyal
2021-10-18 21:34 ` [dpdk-dev] [PATCH v3 0/8] crypto/security session framework rework Akhil Goyal
2021-10-18 21:34 ` [dpdk-dev] [PATCH v3 1/8] security: rework session framework Akhil Goyal
2021-10-18 21:34 ` [dpdk-dev] [PATCH v3 2/8] security: hide security session struct Akhil Goyal
2021-10-18 21:34 ` [dpdk-dev] [PATCH v3 3/8] net/cnxk: rework security session framework Akhil Goyal
2021-10-18 21:34 ` [dpdk-dev] [PATCH v3 4/8] security: pass session iova in PMD sess create Akhil Goyal
2021-10-18 21:34 ` [dpdk-dev] [PATCH v3 5/8] drivers/crypto: support security session get size op Akhil Goyal
2021-10-18 21:34 ` [dpdk-dev] [PATCH v3 6/8] cryptodev: rework session framework Akhil Goyal
2021-10-20 19:27 ` Ananyev, Konstantin
2021-10-21 6:53 ` Akhil Goyal
2021-10-21 10:38 ` Ananyev, Konstantin
2021-10-21 12:30 ` Akhil Goyal
2021-10-21 13:11 ` Ananyev, Konstantin
2021-10-18 21:34 ` [dpdk-dev] [PATCH v3 7/8] cryptodev: hide sym session structure Akhil Goyal
2021-10-18 21:34 ` [dpdk-dev] [PATCH v3 8/8] cryptodev: pass session iova in configure session Akhil Goyal
2021-10-20 14:36 ` Hemant Agrawal [this message]
2021-10-20 15:45 ` [dpdk-dev] [PATCH v3 0/8] crypto/security session framework rework Power, Ciara
2021-10-20 16:41 ` Akhil Goyal
2021-10-20 16:48 ` Akhil Goyal
2021-10-20 18:04 ` Akhil Goyal
2021-10-21 8:43 ` Zhang, Roy Fan
2021-10-13 19:22 ` [dpdk-dev] [PATCH v2 2/7] security: hide security session struct Akhil Goyal
2021-10-13 19:22 ` [dpdk-dev] [PATCH v2 3/7] net/cnxk: rework security session framework Akhil Goyal
2021-10-13 19:22 ` [dpdk-dev] [PATCH v2 4/7] security: pass session iova in PMD sess create Akhil Goyal
2021-10-13 19:22 ` [dpdk-dev] [PATCH v2 5/7] cryptodev: rework session framework Akhil Goyal
2021-10-13 19:22 ` [dpdk-dev] [PATCH v2 6/7] cryptodev: hide sym session structure Akhil Goyal
2021-10-13 19:22 ` [dpdk-dev] [PATCH v2 7/7] cryptodev: pass session iova in configure session Akhil Goyal
2021-10-14 11:47 ` [dpdk-dev] [PATCH v2 0/7] crypto/security session framework rework Akhil Goyal
2021-10-14 12:30 ` Zhang, Roy Fan
2021-10-14 12:34 ` Akhil Goyal
2021-10-14 17:07 ` Zhang, Roy Fan
2021-10-14 18:23 ` Akhil Goyal
2021-10-14 18:57 ` Akhil Goyal
2021-10-15 15:33 ` Zhang, Roy Fan
2021-10-15 17:42 ` Akhil Goyal
2021-10-15 18:47 ` Akhil Goyal
2021-10-16 13:31 ` Zhang, Roy Fan
2021-10-16 13:21 ` Zhang, Roy Fan
2021-10-15 8:12 ` Zhang, Roy Fan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=DU2PR04MB8630517C4C4D97158874975189BE9@DU2PR04MB8630.eurprd04.prod.outlook.com \
--to=hemant.agrawal@nxp.com \
--cc=G.Singh@nxp.com \
--cc=adwivedi@marvell.com \
--cc=ajit.khaparde@broadcom.com \
--cc=anoobj@marvell.com \
--cc=asomalap@amd.com \
--cc=ciara.power@intel.com \
--cc=david.marchand@redhat.com \
--cc=declan.doherty@intel.com \
--cc=dev@dpdk.org \
--cc=fiona.trahe@intel.com \
--cc=gakhil@marvell.com \
--cc=haiyue.wang@intel.com \
--cc=jianjay.zhou@huawei.com \
--cc=jianwang@trustnetic.com \
--cc=jiawenwu@trustnetic.com \
--cc=konstantin.ananyev@intel.com \
--cc=matan@nvidia.com \
--cc=pablo.de.lara.guarch@intel.com \
--cc=radu.nicolau@intel.com \
--cc=rnagadheeraj@marvell.com \
--cc=roy.fan.zhang@intel.com \
--cc=ruifeng.wang@arm.com \
--cc=thomas@monjalon.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).