Message ID | 20220921150258.2061702-1-gakhil@marvell.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 3047DA00C3; Wed, 21 Sep 2022 17:03:26 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C435C4067C; Wed, 21 Sep 2022 17:03:25 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by mails.dpdk.org (Postfix) with ESMTP id 658424014F for <dev@dpdk.org>; Wed, 21 Sep 2022 17:03:24 +0200 (CEST) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 28LA54QX024593; Wed, 21 Sep 2022 08:03:17 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type; s=pfpt0220; bh=Qeeh52cAf1ZIz32pti/1gQDicsNOm7Sulc3Ypz2DaRI=; b=NEh3N90ERdw9DIo+2dfg7gcXxDZgvimm7xQWlnKz158elM4KvdHzFNxBKdoWHlzTj9LC mnt18J4y7b5NA64gJC/ejV/P/7H2eM6C3iG0xr3obYpTKIeSIVlD6Y9FNxv4nSvGs3RC yB7bhmMNRYAbm1LPfdCCxO3vfFSuD0DIrS/1SQuiQP+r/qe8kKOcboek0GjTxQ+giRwl dhqsoH1/zzqTwmehXKdc/J4agbv4Y/qpHu1hoOc7Flnnq9NOCfqwcbUj8TrP94bdJ8SJ x2MDf12/VzySKn7XfaoOOvE1d+/xOhYGHrBlZc1KmrJQjdQP4KAivGwwudJBWdzxsDEH Ag== Received: from dc5-exch01.marvell.com ([199.233.59.181]) by mx0a-0016f401.pphosted.com (PPS) with ESMTPS id 3jr0b7129q-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Wed, 21 Sep 2022 08:03:17 -0700 Received: from DC5-EXCH01.marvell.com (10.69.176.38) by DC5-EXCH01.marvell.com (10.69.176.38) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 21 Sep 2022 08:03:16 -0700 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH01.marvell.com (10.69.176.38) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Wed, 21 Sep 2022 08:03:16 -0700 Received: from localhost.localdomain (unknown [10.28.36.102]) by maili.marvell.com (Postfix) with ESMTP id 416233F7054; Wed, 21 Sep 2022 08:03:08 -0700 (PDT) From: Akhil Goyal <gakhil@marvell.com> To: <dev@dpdk.org> CC: <thomas@monjalon.net>, <david.marchand@redhat.com>, <hemant.agrawal@nxp.com>, <vattunuru@marvell.com>, <ferruh.yigit@xilinx.com>, <andrew.rybchenko@oktetlabs.ru>, <konstantin.v.ananyev@yandex.ru>, <jiawenwu@trustnetic.com>, <yisen.zhuang@huawei.com>, <irusskikh@marvell.com>, <jerinj@marvell.com>, <adwivedi@marvell.com>, <maxime.coquelin@redhat.com>, <chandu@amd.com>, <ruifeng.wang@arm.com>, <ajit.khaparde@broadcom.com>, <anoobj@marvell.com>, <pablo.de.lara.guarch@intel.com>, <matan@nvidia.com>, <g.singh@nxp.com>, <qiming.yang@intel.com>, <wenjun1.wu@intel.com>, <jianwang@trustnetic.com>, <jingjing.wu@intel.com>, <beilei.xing@intel.com>, <ndabilpuram@marvell.com>, Akhil Goyal <gakhil@marvell.com> Subject: [PATCH v2 0/6] crypto/security session framework rework Date: Wed, 21 Sep 2022 20:32:52 +0530 Message-ID: <20220921150258.2061702-1-gakhil@marvell.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220829160645.378406-1-roy.fan.zhang@intel.com> References: <20220829160645.378406-1-roy.fan.zhang@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Proofpoint-ORIG-GUID: 4VgdsMkjdCun3wuoXW_7vdJdGERCL2i3 X-Proofpoint-GUID: 4VgdsMkjdCun3wuoXW_7vdJdGERCL2i3 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.895,Hydra:6.0.528,FMLib:17.11.122.1 definitions=2022-09-21_08,2022-09-20_02,2022-06-22_01 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org |
Series |
crypto/security session framework rework
|
|
Message
Akhil Goyal
Sept. 21, 2022, 3:02 p.m. UTC
This patchset reworks the symmetric crypto and security session data structure to use a single virtual/physical contiguous buffer for symmetric crypto/security 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. The change was also submitted last year during DPDK 21.11 timeframe also[1], but was not applied due to lack of feedback from community. Please help in getting this cleanup merged in this cycle. Now the similar work was already done for asymmetric crypto. This patchset is rebased over current tree and fixes all the issues reported so far. This patchset is a v2 for the patch that was sent by Fan Zhang(Intel) with a few changes - Added security session rework also. - fixed issues in [2] reported on mailing list. - few other fixes. Please review and provide feedback as soon as possible as this is intended to be merged in DPDK 22.11 RC1. Currently the cnxk platform is tested with this change. Request everyone to review and test on their platform. Special note to ixgbe and txgbe maintainers. There is a wrong implementation for flow creation. Please check. A hack is added to bypass it. Please fix it separately. [1] https://patches.dpdk.org/project/dpdk/cover/20211018213452.2734720-1-gakhil@marvell.com/ [2] https://patches.dpdk.org/project/dpdk/cover/20220829160645.378406-1-roy.fan.zhang@intel.com/ Akhil Goyal (5): cryptodev: rework session framework cryptodev: hide sym session structure security: remove priv mempool usage drivers/crypto: support security session get size op security: hide session structure Fan Zhang (1): crypto/scheduler: use unified session app/test-crypto-perf/cperf.h | 1 - app/test-crypto-perf/cperf_ops.c | 40 +-- app/test-crypto-perf/cperf_ops.h | 2 +- app/test-crypto-perf/cperf_test_latency.c | 9 +- app/test-crypto-perf/cperf_test_latency.h | 1 - .../cperf_test_pmd_cyclecount.c | 10 +- .../cperf_test_pmd_cyclecount.h | 1 - app/test-crypto-perf/cperf_test_throughput.c | 11 +- app/test-crypto-perf/cperf_test_throughput.h | 1 - app/test-crypto-perf/cperf_test_verify.c | 9 +- app/test-crypto-perf/cperf_test_verify.h | 1 - app/test-crypto-perf/main.c | 30 +- app/test-eventdev/test_perf_common.c | 35 +- app/test-eventdev/test_perf_common.h | 1 - app/test/test_cryptodev.c | 336 +++++------------- app/test/test_cryptodev_blockcipher.c | 16 +- app/test/test_cryptodev_security_ipsec.c | 2 +- app/test/test_cryptodev_security_ipsec.h | 2 +- app/test/test_event_crypto_adapter.c | 35 +- app/test/test_ipsec.c | 47 +-- app/test/test_ipsec_perf.c | 4 +- app/test/test_security.c | 178 ++-------- app/test/test_security_inline_proto.c | 26 +- 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/common/cnxk/roc_cpt.c | 4 +- drivers/crypto/armv8/rte_armv8_pmd.c | 21 +- drivers/crypto/armv8/rte_armv8_pmd_ops.c | 32 +- drivers/crypto/bcmfs/bcmfs_sym_session.c | 39 +- drivers/crypto/bcmfs/bcmfs_sym_session.h | 3 +- drivers/crypto/caam_jr/caam_jr.c | 69 +--- drivers/crypto/ccp/ccp_crypto.c | 56 +-- 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 | 41 +-- drivers/crypto/cnxk/cn10k_ipsec.c | 45 +-- drivers/crypto/cnxk/cn9k_cryptodev_ops.c | 38 +- drivers/crypto/cnxk/cn9k_ipsec.c | 54 +-- drivers/crypto/cnxk/cnxk_cryptodev_ops.c | 55 +-- drivers/crypto/cnxk/cnxk_cryptodev_ops.h | 16 +- drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c | 70 ++-- drivers/crypto/dpaa2_sec/dpaa2_sec_raw_dp.c | 6 +- drivers/crypto/dpaa_sec/dpaa_sec.c | 69 +--- drivers/crypto/dpaa_sec/dpaa_sec_raw_dp.c | 7 +- 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 | 62 +--- 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 | 25 +- drivers/crypto/mvsam/rte_mrvl_pmd.c | 11 +- drivers/crypto/mvsam/rte_mrvl_pmd_ops.c | 49 +-- drivers/crypto/nitrox/nitrox_sym.c | 39 +- drivers/crypto/null/null_crypto_pmd.c | 20 +- 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/dev/qat_sym_pmd_gen1.c | 1 + drivers/crypto/qat/qat_sym.c | 15 +- drivers/crypto/qat/qat_sym.h | 16 +- drivers/crypto/qat/qat_sym_session.c | 73 ++-- drivers/crypto/qat/qat_sym_session.h | 10 +- drivers/crypto/scheduler/scheduler_failover.c | 19 +- .../crypto/scheduler/scheduler_multicore.c | 17 + .../scheduler/scheduler_pkt_size_distr.c | 81 +++-- drivers/crypto/scheduler/scheduler_pmd_ops.c | 93 ++++- .../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 +- drivers/net/cnxk/cn10k_ethdev_sec.c | 38 +- drivers/net/cnxk/cn9k_ethdev_sec.c | 32 +- drivers/net/iavf/iavf_ipsec_crypto.c | 23 +- drivers/net/iavf/iavf_ipsec_crypto.h | 2 +- drivers/net/ixgbe/ixgbe_ipsec.c | 31 +- drivers/net/txgbe/txgbe_ipsec.c | 32 +- examples/fips_validation/fips_dev_self_test.c | 40 +-- examples/fips_validation/main.c | 35 +- examples/ipsec-secgw/ipsec-secgw.c | 44 +-- examples/ipsec-secgw/ipsec.c | 16 +- examples/ipsec-secgw/ipsec.h | 1 - examples/ipsec-secgw/ipsec_worker.c | 2 +- examples/l2fwd-crypto/main.c | 54 +-- examples/vhost_crypto/main.c | 16 +- lib/cryptodev/cryptodev_pmd.h | 60 ++-- lib/cryptodev/cryptodev_trace_points.c | 6 - lib/cryptodev/rte_crypto.h | 3 +- lib/cryptodev/rte_crypto_sym.h | 11 +- lib/cryptodev/rte_cryptodev.c | 284 ++++++--------- lib/cryptodev/rte_cryptodev.h | 153 +++----- lib/cryptodev/rte_cryptodev_trace.h | 35 +- lib/cryptodev/version.map | 6 - lib/ipsec/rte_ipsec_group.h | 13 +- lib/ipsec/ses.c | 5 +- lib/pipeline/rte_table_action.c | 10 +- lib/security/rte_security.c | 33 +- lib/security/rte_security.h | 90 +++-- lib/security/rte_security_driver.h | 31 +- lib/vhost/rte_vhost_crypto.h | 3 - lib/vhost/vhost_crypto.c | 28 +- 109 files changed, 1255 insertions(+), 2413 deletions(-)
Comments
++ Fan Zhang I think I missed adding one of the major contributor for this cleanup. > -----Original Message----- > From: Akhil Goyal <gakhil@marvell.com> > Sent: Wednesday, September 21, 2022 8:33 PM > To: dev@dpdk.org > Cc: thomas@monjalon.net; david.marchand@redhat.com; > hemant.agrawal@nxp.com; Vamsi Krishna Attunuru <vattunuru@marvell.com>; > ferruh.yigit@xilinx.com; andrew.rybchenko@oktetlabs.ru; > konstantin.v.ananyev@yandex.ru; jiawenwu@trustnetic.com; > yisen.zhuang@huawei.com; Igor Russkikh <irusskikh@marvell.com>; Jerin Jacob > Kollanukkaran <jerinj@marvell.com>; Ankur Dwivedi <adwivedi@marvell.com>; > maxime.coquelin@redhat.com; chandu@amd.com; ruifeng.wang@arm.com; > ajit.khaparde@broadcom.com; Anoob Joseph <anoobj@marvell.com>; > pablo.de.lara.guarch@intel.com; matan@nvidia.com; g.singh@nxp.com; > qiming.yang@intel.com; wenjun1.wu@intel.com; jianwang@trustnetic.com; > jingjing.wu@intel.com; beilei.xing@intel.com; Nithin Kumar Dabilpuram > <ndabilpuram@marvell.com>; Akhil Goyal <gakhil@marvell.com> > Subject: [PATCH v2 0/6] crypto/security session framework rework > > This patchset reworks the symmetric crypto and security session > data structure to use a single virtual/physical contiguous buffer > for symmetric crypto/security 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. > > The change was also submitted last year during DPDK 21.11 > timeframe also[1], but was not applied due to lack of feedback from > community. Please help in getting this cleanup merged in this cycle. > > Now the similar work was already done for asymmetric crypto. > This patchset is rebased over current tree and fixes all > the issues reported so far. > This patchset is a v2 for the patch that was sent by Fan Zhang(Intel) > with a few changes > - Added security session rework also. > - fixed issues in [2] reported on mailing list. > - few other fixes. > > Please review and provide feedback as soon as possible > as this is intended to be merged in DPDK 22.11 RC1. > > Currently the cnxk platform is tested with this change. > Request everyone to review and test on their platform. > > Special note to ixgbe and txgbe maintainers. > There is a wrong implementation for flow creation. Please check. > A hack is added to bypass it. Please fix it separately. > > [1] https://patches.dpdk.org/project/dpdk/cover/20211018213452.2734720-1- > gakhil@marvell.com/ > [2] https://patches.dpdk.org/project/dpdk/cover/20220829160645.378406-1- > roy.fan.zhang@intel.com/ > > Akhil Goyal (5): > cryptodev: rework session framework > cryptodev: hide sym session structure > security: remove priv mempool usage > drivers/crypto: support security session get size op > security: hide session structure > > Fan Zhang (1): > crypto/scheduler: use unified session > > app/test-crypto-perf/cperf.h | 1 - > app/test-crypto-perf/cperf_ops.c | 40 +-- > app/test-crypto-perf/cperf_ops.h | 2 +- > app/test-crypto-perf/cperf_test_latency.c | 9 +- > app/test-crypto-perf/cperf_test_latency.h | 1 - > .../cperf_test_pmd_cyclecount.c | 10 +- > .../cperf_test_pmd_cyclecount.h | 1 - > app/test-crypto-perf/cperf_test_throughput.c | 11 +- > app/test-crypto-perf/cperf_test_throughput.h | 1 - > app/test-crypto-perf/cperf_test_verify.c | 9 +- > app/test-crypto-perf/cperf_test_verify.h | 1 - > app/test-crypto-perf/main.c | 30 +- > app/test-eventdev/test_perf_common.c | 35 +- > app/test-eventdev/test_perf_common.h | 1 - > app/test/test_cryptodev.c | 336 +++++------------- > app/test/test_cryptodev_blockcipher.c | 16 +- > app/test/test_cryptodev_security_ipsec.c | 2 +- > app/test/test_cryptodev_security_ipsec.h | 2 +- > app/test/test_event_crypto_adapter.c | 35 +- > app/test/test_ipsec.c | 47 +-- > app/test/test_ipsec_perf.c | 4 +- > app/test/test_security.c | 178 ++-------- > app/test/test_security_inline_proto.c | 26 +- > 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/common/cnxk/roc_cpt.c | 4 +- > drivers/crypto/armv8/rte_armv8_pmd.c | 21 +- > drivers/crypto/armv8/rte_armv8_pmd_ops.c | 32 +- > drivers/crypto/bcmfs/bcmfs_sym_session.c | 39 +- > drivers/crypto/bcmfs/bcmfs_sym_session.h | 3 +- > drivers/crypto/caam_jr/caam_jr.c | 69 +--- > drivers/crypto/ccp/ccp_crypto.c | 56 +-- > 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 | 41 +-- > drivers/crypto/cnxk/cn10k_ipsec.c | 45 +-- > drivers/crypto/cnxk/cn9k_cryptodev_ops.c | 38 +- > drivers/crypto/cnxk/cn9k_ipsec.c | 54 +-- > drivers/crypto/cnxk/cnxk_cryptodev_ops.c | 55 +-- > drivers/crypto/cnxk/cnxk_cryptodev_ops.h | 16 +- > drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c | 70 ++-- > drivers/crypto/dpaa2_sec/dpaa2_sec_raw_dp.c | 6 +- > drivers/crypto/dpaa_sec/dpaa_sec.c | 69 +--- > drivers/crypto/dpaa_sec/dpaa_sec_raw_dp.c | 7 +- > 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 | 62 +--- > 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 | 25 +- > drivers/crypto/mvsam/rte_mrvl_pmd.c | 11 +- > drivers/crypto/mvsam/rte_mrvl_pmd_ops.c | 49 +-- > drivers/crypto/nitrox/nitrox_sym.c | 39 +- > drivers/crypto/null/null_crypto_pmd.c | 20 +- > 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/dev/qat_sym_pmd_gen1.c | 1 + > drivers/crypto/qat/qat_sym.c | 15 +- > drivers/crypto/qat/qat_sym.h | 16 +- > drivers/crypto/qat/qat_sym_session.c | 73 ++-- > drivers/crypto/qat/qat_sym_session.h | 10 +- > drivers/crypto/scheduler/scheduler_failover.c | 19 +- > .../crypto/scheduler/scheduler_multicore.c | 17 + > .../scheduler/scheduler_pkt_size_distr.c | 81 +++-- > drivers/crypto/scheduler/scheduler_pmd_ops.c | 93 ++++- > .../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 +- > drivers/net/cnxk/cn10k_ethdev_sec.c | 38 +- > drivers/net/cnxk/cn9k_ethdev_sec.c | 32 +- > drivers/net/iavf/iavf_ipsec_crypto.c | 23 +- > drivers/net/iavf/iavf_ipsec_crypto.h | 2 +- > drivers/net/ixgbe/ixgbe_ipsec.c | 31 +- > drivers/net/txgbe/txgbe_ipsec.c | 32 +- > examples/fips_validation/fips_dev_self_test.c | 40 +-- > examples/fips_validation/main.c | 35 +- > examples/ipsec-secgw/ipsec-secgw.c | 44 +-- > examples/ipsec-secgw/ipsec.c | 16 +- > examples/ipsec-secgw/ipsec.h | 1 - > examples/ipsec-secgw/ipsec_worker.c | 2 +- > examples/l2fwd-crypto/main.c | 54 +-- > examples/vhost_crypto/main.c | 16 +- > lib/cryptodev/cryptodev_pmd.h | 60 ++-- > lib/cryptodev/cryptodev_trace_points.c | 6 - > lib/cryptodev/rte_crypto.h | 3 +- > lib/cryptodev/rte_crypto_sym.h | 11 +- > lib/cryptodev/rte_cryptodev.c | 284 ++++++--------- > lib/cryptodev/rte_cryptodev.h | 153 +++----- > lib/cryptodev/rte_cryptodev_trace.h | 35 +- > lib/cryptodev/version.map | 6 - > lib/ipsec/rte_ipsec_group.h | 13 +- > lib/ipsec/ses.c | 5 +- > lib/pipeline/rte_table_action.c | 10 +- > lib/security/rte_security.c | 33 +- > lib/security/rte_security.h | 90 +++-- > lib/security/rte_security_driver.h | 31 +- > lib/vhost/rte_vhost_crypto.h | 3 - > lib/vhost/vhost_crypto.c | 28 +- > 109 files changed, 1255 insertions(+), 2413 deletions(-) > > -- > 2.25.1
Hi Akhil, We have verified this patch series on DPAA1 and DPAA2 platforms using test and ipsec-secgw applications. Series Tested-by: Gagandeep Singh <g.singh@nxp.com> Regards, Gagan > -----Original Message----- > From: Akhil Goyal <gakhil@marvell.com> > Sent: Wednesday, September 21, 2022 8:33 PM > To: dev@dpdk.org > Cc: thomas@monjalon.net; david.marchand@redhat.com; Hemant Agrawal > <hemant.agrawal@nxp.com>; vattunuru@marvell.com; > ferruh.yigit@xilinx.com; andrew.rybchenko@oktetlabs.ru; > konstantin.v.ananyev@yandex.ru; jiawenwu@trustnetic.com; > yisen.zhuang@huawei.com; irusskikh@marvell.com; jerinj@marvell.com; > adwivedi@marvell.com; maxime.coquelin@redhat.com; chandu@amd.com; > ruifeng.wang@arm.com; ajit.khaparde@broadcom.com; > anoobj@marvell.com; pablo.de.lara.guarch@intel.com; matan@nvidia.com; > Gagandeep Singh <G.Singh@nxp.com>; qiming.yang@intel.com; > wenjun1.wu@intel.com; jianwang@trustnetic.com; jingjing.wu@intel.com; > beilei.xing@intel.com; ndabilpuram@marvell.com; Akhil Goyal > <gakhil@marvell.com> > Subject: [PATCH v2 0/6] crypto/security session framework rework > > This patchset reworks the symmetric crypto and security session data > structure to use a single virtual/physical contiguous buffer for symmetric > crypto/security 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. > > The change was also submitted last year during DPDK 21.11 timeframe > also[1], but was not applied due to lack of feedback from community. Please > help in getting this cleanup merged in this cycle. > > Now the similar work was already done for asymmetric crypto. > This patchset is rebased over current tree and fixes all the issues reported so > far. > This patchset is a v2 for the patch that was sent by Fan Zhang(Intel) with a > few changes > - Added security session rework also. > - fixed issues in [2] reported on mailing list. > - few other fixes. > > Please review and provide feedback as soon as possible as this is intended to > be merged in DPDK 22.11 RC1. > > Currently the cnxk platform is tested with this change. > Request everyone to review and test on their platform. > > Special note to ixgbe and txgbe maintainers. > There is a wrong implementation for flow creation. Please check. > A hack is added to bypass it. Please fix it separately. > > [1] > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatch > es.dpdk.org%2Fproject%2Fdpdk%2Fcover%2F20211018213452.2734720-1- > gakhil%40marvell.com%2F&data=05%7C01%7Cg.singh%40nxp.com%7 > C4654103c909a4dd3031208da9be279f0%7C686ea1d3bc2b4c6fa92cd99c5c3 > 01635%7C0%7C0%7C637993694272898803%7CUnknown%7CTWFpbGZsb3d > 8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0% > 3D%7C3000%7C%7C%7C&sdata=NkLq49IFdRzKdHwZ5mvLJhLKi5pxsV15 > t5ZsC8lK1Xc%3D&reserved=0 > [2] > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatch > es.dpdk.org%2Fproject%2Fdpdk%2Fcover%2F20220829160645.378406-1- > roy.fan.zhang%40intel.com%2F&data=05%7C01%7Cg.singh%40nxp.co > m%7C4654103c909a4dd3031208da9be279f0%7C686ea1d3bc2b4c6fa92cd99 > c5c301635%7C0%7C0%7C637993694272898803%7CUnknown%7CTWFpbGZ > sb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6 > Mn0%3D%7C3000%7C%7C%7C&sdata=WLJbXuU%2FLDeV9QlEUhqfNF > 7XAG8itcI%2BMdHgecv%2BaN4%3D&reserved=0 > > Akhil Goyal (5): > cryptodev: rework session framework > cryptodev: hide sym session structure > security: remove priv mempool usage > drivers/crypto: support security session get size op > security: hide session structure > > Fan Zhang (1): > crypto/scheduler: use unified session > > app/test-crypto-perf/cperf.h | 1 - > app/test-crypto-perf/cperf_ops.c | 40 +-- > app/test-crypto-perf/cperf_ops.h | 2 +- > app/test-crypto-perf/cperf_test_latency.c | 9 +- > app/test-crypto-perf/cperf_test_latency.h | 1 - > .../cperf_test_pmd_cyclecount.c | 10 +- > .../cperf_test_pmd_cyclecount.h | 1 - > app/test-crypto-perf/cperf_test_throughput.c | 11 +- > app/test-crypto-perf/cperf_test_throughput.h | 1 - > app/test-crypto-perf/cperf_test_verify.c | 9 +- > app/test-crypto-perf/cperf_test_verify.h | 1 - > app/test-crypto-perf/main.c | 30 +- > app/test-eventdev/test_perf_common.c | 35 +- > app/test-eventdev/test_perf_common.h | 1 - > app/test/test_cryptodev.c | 336 +++++------------- > app/test/test_cryptodev_blockcipher.c | 16 +- > app/test/test_cryptodev_security_ipsec.c | 2 +- > app/test/test_cryptodev_security_ipsec.h | 2 +- > app/test/test_event_crypto_adapter.c | 35 +- > app/test/test_ipsec.c | 47 +-- > app/test/test_ipsec_perf.c | 4 +- > app/test/test_security.c | 178 ++-------- > app/test/test_security_inline_proto.c | 26 +- > 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/common/cnxk/roc_cpt.c | 4 +- > drivers/crypto/armv8/rte_armv8_pmd.c | 21 +- > drivers/crypto/armv8/rte_armv8_pmd_ops.c | 32 +- > drivers/crypto/bcmfs/bcmfs_sym_session.c | 39 +- > drivers/crypto/bcmfs/bcmfs_sym_session.h | 3 +- > drivers/crypto/caam_jr/caam_jr.c | 69 +--- > drivers/crypto/ccp/ccp_crypto.c | 56 +-- > 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 | 41 +-- > drivers/crypto/cnxk/cn10k_ipsec.c | 45 +-- > drivers/crypto/cnxk/cn9k_cryptodev_ops.c | 38 +- > drivers/crypto/cnxk/cn9k_ipsec.c | 54 +-- > drivers/crypto/cnxk/cnxk_cryptodev_ops.c | 55 +-- > drivers/crypto/cnxk/cnxk_cryptodev_ops.h | 16 +- > drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c | 70 ++-- > drivers/crypto/dpaa2_sec/dpaa2_sec_raw_dp.c | 6 +- > drivers/crypto/dpaa_sec/dpaa_sec.c | 69 +--- > drivers/crypto/dpaa_sec/dpaa_sec_raw_dp.c | 7 +- > 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 | 62 +--- > 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 | 25 +- > drivers/crypto/mvsam/rte_mrvl_pmd.c | 11 +- > drivers/crypto/mvsam/rte_mrvl_pmd_ops.c | 49 +-- > drivers/crypto/nitrox/nitrox_sym.c | 39 +- > drivers/crypto/null/null_crypto_pmd.c | 20 +- > 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/dev/qat_sym_pmd_gen1.c | 1 + > drivers/crypto/qat/qat_sym.c | 15 +- > drivers/crypto/qat/qat_sym.h | 16 +- > drivers/crypto/qat/qat_sym_session.c | 73 ++-- > drivers/crypto/qat/qat_sym_session.h | 10 +- > drivers/crypto/scheduler/scheduler_failover.c | 19 +- > .../crypto/scheduler/scheduler_multicore.c | 17 + > .../scheduler/scheduler_pkt_size_distr.c | 81 +++-- > drivers/crypto/scheduler/scheduler_pmd_ops.c | 93 ++++- > .../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 +- > drivers/net/cnxk/cn10k_ethdev_sec.c | 38 +- > drivers/net/cnxk/cn9k_ethdev_sec.c | 32 +- > drivers/net/iavf/iavf_ipsec_crypto.c | 23 +- > drivers/net/iavf/iavf_ipsec_crypto.h | 2 +- > drivers/net/ixgbe/ixgbe_ipsec.c | 31 +- > drivers/net/txgbe/txgbe_ipsec.c | 32 +- > examples/fips_validation/fips_dev_self_test.c | 40 +-- > examples/fips_validation/main.c | 35 +- > examples/ipsec-secgw/ipsec-secgw.c | 44 +-- > examples/ipsec-secgw/ipsec.c | 16 +- > examples/ipsec-secgw/ipsec.h | 1 - > examples/ipsec-secgw/ipsec_worker.c | 2 +- > examples/l2fwd-crypto/main.c | 54 +-- > examples/vhost_crypto/main.c | 16 +- > lib/cryptodev/cryptodev_pmd.h | 60 ++-- > lib/cryptodev/cryptodev_trace_points.c | 6 - > lib/cryptodev/rte_crypto.h | 3 +- > lib/cryptodev/rte_crypto_sym.h | 11 +- > lib/cryptodev/rte_cryptodev.c | 284 ++++++--------- > lib/cryptodev/rte_cryptodev.h | 153 +++----- > lib/cryptodev/rte_cryptodev_trace.h | 35 +- > lib/cryptodev/version.map | 6 - > lib/ipsec/rte_ipsec_group.h | 13 +- > lib/ipsec/ses.c | 5 +- > lib/pipeline/rte_table_action.c | 10 +- > lib/security/rte_security.c | 33 +- > lib/security/rte_security.h | 90 +++-- > lib/security/rte_security_driver.h | 31 +- > lib/vhost/rte_vhost_crypto.h | 3 - > lib/vhost/vhost_crypto.c | 28 +- > 109 files changed, 1255 insertions(+), 2413 deletions(-) > > -- > 2.25.1
Hi Akhil/Fan Patchset verified for QAT and AESNI_MB sessions, with particular focus on Security Cipher-CRC For the series, Tested-by: David Coyle <david.coyle@intel.com> Tested-by: Kevin O'Sullivan <kevin.osullivan@intel.com> Regards, David > -----Original Message----- > From: Akhil Goyal <gakhil@marvell.com> > Sent: Wednesday, September 21, 2022 4:11 PM > To: Akhil Goyal <gakhil@marvell.com>; dev@dpdk.org; Zhang, Roy Fan > <roy.fan.zhang@intel.com> > Cc: thomas@monjalon.net; david.marchand@redhat.com; > hemant.agrawal@nxp.com; Vamsi Krishna Attunuru > <vattunuru@marvell.com>; ferruh.yigit@xilinx.com; > andrew.rybchenko@oktetlabs.ru; konstantin.v.ananyev@yandex.ru; > jiawenwu@trustnetic.com; yisen.zhuang@huawei.com; Igor Russkikh > <irusskikh@marvell.com>; Jerin Jacob Kollanukkaran <jerinj@marvell.com>; > Ankur Dwivedi <adwivedi@marvell.com>; maxime.coquelin@redhat.com; > chandu@amd.com; ruifeng.wang@arm.com; ajit.khaparde@broadcom.com; > Anoob Joseph <anoobj@marvell.com>; De Lara Guarch, Pablo > <pablo.de.lara.guarch@intel.com>; matan@nvidia.com; g.singh@nxp.com; > Yang, Qiming <qiming.yang@intel.com>; Wu, Wenjun1 > <wenjun1.wu@intel.com>; jianwang@trustnetic.com; Wu, Jingjing > <jingjing.wu@intel.com>; Xing, Beilei <beilei.xing@intel.com>; Nithin Kumar > Dabilpuram <ndabilpuram@marvell.com> > Subject: RE: [PATCH v2 0/6] crypto/security session framework rework > > ++ Fan Zhang > I think I missed adding one of the major contributor for this cleanup. > > > -----Original Message----- > > From: Akhil Goyal <gakhil@marvell.com> > > Sent: Wednesday, September 21, 2022 8:33 PM > > To: dev@dpdk.org > > Cc: thomas@monjalon.net; david.marchand@redhat.com; > > hemant.agrawal@nxp.com; Vamsi Krishna Attunuru > > <vattunuru@marvell.com>; ferruh.yigit@xilinx.com; > > andrew.rybchenko@oktetlabs.ru; konstantin.v.ananyev@yandex.ru; > > jiawenwu@trustnetic.com; yisen.zhuang@huawei.com; Igor Russkikh > > <irusskikh@marvell.com>; Jerin Jacob Kollanukkaran > > <jerinj@marvell.com>; Ankur Dwivedi <adwivedi@marvell.com>; > > maxime.coquelin@redhat.com; chandu@amd.com; > ruifeng.wang@arm.com; > > ajit.khaparde@broadcom.com; Anoob Joseph <anoobj@marvell.com>; > > pablo.de.lara.guarch@intel.com; matan@nvidia.com; g.singh@nxp.com; > > qiming.yang@intel.com; wenjun1.wu@intel.com; > jianwang@trustnetic.com; > > jingjing.wu@intel.com; beilei.xing@intel.com; Nithin Kumar Dabilpuram > > <ndabilpuram@marvell.com>; Akhil Goyal <gakhil@marvell.com> > > Subject: [PATCH v2 0/6] crypto/security session framework rework > > > > This patchset reworks the symmetric crypto and security session data > > structure to use a single virtual/physical contiguous buffer for > > symmetric crypto/security 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. > > > > The change was also submitted last year during DPDK 21.11 timeframe > > also[1], but was not applied due to lack of feedback from community. > > Please help in getting this cleanup merged in this cycle. > > > > Now the similar work was already done for asymmetric crypto. > > This patchset is rebased over current tree and fixes all the issues > > reported so far. > > This patchset is a v2 for the patch that was sent by Fan Zhang(Intel) > > with a few changes > > - Added security session rework also. > > - fixed issues in [2] reported on mailing list. > > - few other fixes. > > > > Please review and provide feedback as soon as possible as this is > > intended to be merged in DPDK 22.11 RC1. > > > > Currently the cnxk platform is tested with this change. > > Request everyone to review and test on their platform. > > > > Special note to ixgbe and txgbe maintainers. > > There is a wrong implementation for flow creation. Please check. > > A hack is added to bypass it. Please fix it separately. > > > > [1] > > https://patches.dpdk.org/project/dpdk/cover/20211018213452.2734720-1- > > gakhil@marvell.com/ > > [2] > > https://patches.dpdk.org/project/dpdk/cover/20220829160645.378406-1- > > roy.fan.zhang@intel.com/ > > > > Akhil Goyal (5): > > cryptodev: rework session framework > > cryptodev: hide sym session structure > > security: remove priv mempool usage > > drivers/crypto: support security session get size op > > security: hide session structure > > > > Fan Zhang (1): > > crypto/scheduler: use unified session > > > > app/test-crypto-perf/cperf.h | 1 - > > app/test-crypto-perf/cperf_ops.c | 40 +-- > > app/test-crypto-perf/cperf_ops.h | 2 +- > > app/test-crypto-perf/cperf_test_latency.c | 9 +- > > app/test-crypto-perf/cperf_test_latency.h | 1 - > > .../cperf_test_pmd_cyclecount.c | 10 +- > > .../cperf_test_pmd_cyclecount.h | 1 - > > app/test-crypto-perf/cperf_test_throughput.c | 11 +- > > app/test-crypto-perf/cperf_test_throughput.h | 1 - > > app/test-crypto-perf/cperf_test_verify.c | 9 +- > > app/test-crypto-perf/cperf_test_verify.h | 1 - > > app/test-crypto-perf/main.c | 30 +- > > app/test-eventdev/test_perf_common.c | 35 +- > > app/test-eventdev/test_perf_common.h | 1 - > > app/test/test_cryptodev.c | 336 +++++------------- > > app/test/test_cryptodev_blockcipher.c | 16 +- > > app/test/test_cryptodev_security_ipsec.c | 2 +- > > app/test/test_cryptodev_security_ipsec.h | 2 +- > > app/test/test_event_crypto_adapter.c | 35 +- > > app/test/test_ipsec.c | 47 +-- > > app/test/test_ipsec_perf.c | 4 +- > > app/test/test_security.c | 178 ++-------- > > app/test/test_security_inline_proto.c | 26 +- > > 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/common/cnxk/roc_cpt.c | 4 +- > > drivers/crypto/armv8/rte_armv8_pmd.c | 21 +- > > drivers/crypto/armv8/rte_armv8_pmd_ops.c | 32 +- > > drivers/crypto/bcmfs/bcmfs_sym_session.c | 39 +- > > drivers/crypto/bcmfs/bcmfs_sym_session.h | 3 +- > > drivers/crypto/caam_jr/caam_jr.c | 69 +--- > > drivers/crypto/ccp/ccp_crypto.c | 56 +-- > > 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 | 41 +-- > > drivers/crypto/cnxk/cn10k_ipsec.c | 45 +-- > > drivers/crypto/cnxk/cn9k_cryptodev_ops.c | 38 +- > > drivers/crypto/cnxk/cn9k_ipsec.c | 54 +-- > > drivers/crypto/cnxk/cnxk_cryptodev_ops.c | 55 +-- > > drivers/crypto/cnxk/cnxk_cryptodev_ops.h | 16 +- > > drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c | 70 ++-- > > drivers/crypto/dpaa2_sec/dpaa2_sec_raw_dp.c | 6 +- > > drivers/crypto/dpaa_sec/dpaa_sec.c | 69 +--- > > drivers/crypto/dpaa_sec/dpaa_sec_raw_dp.c | 7 +- > > 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 | 62 +--- > > 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 | 25 +- > > drivers/crypto/mvsam/rte_mrvl_pmd.c | 11 +- > > drivers/crypto/mvsam/rte_mrvl_pmd_ops.c | 49 +-- > > drivers/crypto/nitrox/nitrox_sym.c | 39 +- > > drivers/crypto/null/null_crypto_pmd.c | 20 +- > > 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/dev/qat_sym_pmd_gen1.c | 1 + > > drivers/crypto/qat/qat_sym.c | 15 +- > > drivers/crypto/qat/qat_sym.h | 16 +- > > drivers/crypto/qat/qat_sym_session.c | 73 ++-- > > drivers/crypto/qat/qat_sym_session.h | 10 +- > > drivers/crypto/scheduler/scheduler_failover.c | 19 +- > > .../crypto/scheduler/scheduler_multicore.c | 17 + > > .../scheduler/scheduler_pkt_size_distr.c | 81 +++-- > > drivers/crypto/scheduler/scheduler_pmd_ops.c | 93 ++++- > > .../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 +- > > drivers/net/cnxk/cn10k_ethdev_sec.c | 38 +- > > drivers/net/cnxk/cn9k_ethdev_sec.c | 32 +- > > drivers/net/iavf/iavf_ipsec_crypto.c | 23 +- > > drivers/net/iavf/iavf_ipsec_crypto.h | 2 +- > > drivers/net/ixgbe/ixgbe_ipsec.c | 31 +- > > drivers/net/txgbe/txgbe_ipsec.c | 32 +- > > examples/fips_validation/fips_dev_self_test.c | 40 +-- > > examples/fips_validation/main.c | 35 +- > > examples/ipsec-secgw/ipsec-secgw.c | 44 +-- > > examples/ipsec-secgw/ipsec.c | 16 +- > > examples/ipsec-secgw/ipsec.h | 1 - > > examples/ipsec-secgw/ipsec_worker.c | 2 +- > > examples/l2fwd-crypto/main.c | 54 +-- > > examples/vhost_crypto/main.c | 16 +- > > lib/cryptodev/cryptodev_pmd.h | 60 ++-- > > lib/cryptodev/cryptodev_trace_points.c | 6 - > > lib/cryptodev/rte_crypto.h | 3 +- > > lib/cryptodev/rte_crypto_sym.h | 11 +- > > lib/cryptodev/rte_cryptodev.c | 284 ++++++--------- > > lib/cryptodev/rte_cryptodev.h | 153 +++----- > > lib/cryptodev/rte_cryptodev_trace.h | 35 +- > > lib/cryptodev/version.map | 6 - > > lib/ipsec/rte_ipsec_group.h | 13 +- > > lib/ipsec/ses.c | 5 +- > > lib/pipeline/rte_table_action.c | 10 +- > > lib/security/rte_security.c | 33 +- > > lib/security/rte_security.h | 90 +++-- > > lib/security/rte_security_driver.h | 31 +- > > lib/vhost/rte_vhost_crypto.h | 3 - > > lib/vhost/vhost_crypto.c | 28 +- > > 109 files changed, 1255 insertions(+), 2413 deletions(-) > > > > -- > > 2.25.1