Message ID | 20220217162909.22713-1-kai.ji@intel.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 8CC58A034E; Thu, 17 Feb 2022 17:29:15 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 244FE40DDD; Thu, 17 Feb 2022 17:29:15 +0100 (CET) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mails.dpdk.org (Postfix) with ESMTP id DEF3240150 for <dev@dpdk.org>; Thu, 17 Feb 2022 17:29:13 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1645115354; x=1676651354; h=from:to:cc:subject:date:message-id:in-reply-to: references; bh=7jXg4mrFgMVlCEecbJ8aHb4lkazKSa0Y3eurVWbiLoc=; b=PuP+C6wuaq0ta957bActzu8evGiz25qaq/90KSKAZ3c1f/bsQMNLYxw+ 11kOkMiPGJ/930/INXdvbvClquM0M4mTTFo1QKUhkkH3ns2e5s9/FxwSw d0eydqTMspq8FkZIIuzRGLKlzj7c9zUa77tnpKRaDRxJbQVsMzA+JYMsZ cmS0YS4gDkFp+1LeyM/yivssqP2CcAjtDzjOITxDyA1WR1mpzqRX3GsTY /I/4Q08v7j9nnbUIbOg0xLEN7wl4/M9a+92HZ2/zRuoo+vlwt0nZqqYMU QeE3MXGGrIIIyuQ/FB6fUISlUicq2UuH5/QvITbkX6aVbYn2EF+Y9TOjy A==; X-IronPort-AV: E=McAfee;i="6200,9189,10261"; a="231534799" X-IronPort-AV: E=Sophos;i="5.88,376,1635231600"; d="scan'208";a="231534799" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Feb 2022 08:29:12 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,376,1635231600"; d="scan'208";a="503580743" Received: from silpixa00400465.ir.intel.com ([10.55.128.22]) by orsmga002.jf.intel.com with ESMTP; 17 Feb 2022 08:29:11 -0800 From: Kai Ji <kai.ji@intel.com> To: dev@dpdk.org Cc: gakhil@marvell.com, Kai Ji <kai.ji@intel.com> Subject: [dpdk-dev v8 00/10] drivers/qat: QAT symmetric crypto datapatch rework Date: Fri, 18 Feb 2022 00:28:59 +0800 Message-Id: <20220217162909.22713-1-kai.ji@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20220208181454.69121-1-kai.ji@intel.com> References: <20220208181454.69121-1-kai.ji@intel.com> 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 |
drivers/qat: QAT symmetric crypto datapatch rework
|
|
Message
Ji, Kai
Feb. 17, 2022, 4:28 p.m. UTC
This patch reworks QAT symmetric crypto datapatch implementation where each generation request building separated and the crypto operation under the raw datapath api implementation are unified. In addtion this patchset also enables QAT OOP support in raw datapath api implementation. v8: - rebase to 22.03-rc1 v7: - fix of pointer cast compile error in x86 v6: - fix of pointer cast error in x86 - rebase to the lastest for-main v5: - rebase to the latest for-main - patchset reconstruct v4: - patchset break down and reconstruct v3: - sperate a single patch 6 to two different patches v2: - review comments addressed Kai Ji (10): common/qat: define build op request and dequeue op crypto/qat: sym build op request specific implementation crypto/qat: qat generation specific enqueue crypto/qat: rework session APIs crypto/qat: rework asymmetric crypto build operation crypto/qat: unify qat sym pmd apis crypto/qat: unify qat asym pmd apis crypto/qat: op burst data path rework crypto/qat: raw dp api integration crypto/qat: support out of place SG list drivers/common/qat/meson.build | 6 +- drivers/common/qat/qat_device.c | 4 +- drivers/common/qat/qat_qp.c | 42 +- drivers/common/qat/qat_qp.h | 54 +- drivers/compress/qat/qat_comp_pmd.c | 14 +- drivers/crypto/qat/dev/qat_asym_pmd_gen1.c | 9 +- drivers/crypto/qat/dev/qat_crypto_pmd_gen2.c | 93 +- drivers/crypto/qat/dev/qat_crypto_pmd_gen3.c | 490 ++++++++- drivers/crypto/qat/dev/qat_crypto_pmd_gen4.c | 257 ++++- drivers/crypto/qat/dev/qat_crypto_pmd_gens.h | 913 ++++++++++++++++- drivers/crypto/qat/dev/qat_sym_pmd_gen1.c | 942 +++++++++++++++++- drivers/crypto/qat/qat_asym.c | 303 +++++- drivers/crypto/qat/qat_asym.h | 79 +- drivers/crypto/qat/qat_asym_pmd.c | 231 ----- drivers/crypto/qat/qat_asym_pmd.h | 54 - drivers/crypto/qat/qat_crypto.h | 16 +- drivers/crypto/qat/qat_sym.c | 979 ++++++------------ drivers/crypto/qat/qat_sym.h | 148 ++- drivers/crypto/qat/qat_sym_hw_dp.c | 995 ------------------- drivers/crypto/qat/qat_sym_pmd.c | 251 ----- drivers/crypto/qat/qat_sym_pmd.h | 95 -- drivers/crypto/qat/qat_sym_session.c | 115 +-- drivers/crypto/qat/qat_sym_session.h | 15 +- 23 files changed, 3582 insertions(+), 2523 deletions(-) delete mode 100644 drivers/crypto/qat/qat_asym_pmd.c delete mode 100644 drivers/crypto/qat/qat_asym_pmd.h delete mode 100644 drivers/crypto/qat/qat_sym_hw_dp.c delete mode 100644 drivers/crypto/qat/qat_sym_pmd.c delete mode 100644 drivers/crypto/qat/qat_sym_pmd.h -- 2.17.1
Comments
> ---------------------------------------------------------------------- > This patch reworks QAT symmetric crypto datapatch implementation where > each > generation request building separated and the crypto operation under the > raw datapath api implementation are unified. > > In addtion this patchset also enables QAT OOP support in raw datapath api > implementation. > > v8: > - rebase to 22.03-rc1 > > v7: > - fix of pointer cast compile error in x86 > > v6: > - fix of pointer cast error in x86 > - rebase to the lastest for-main > > v5: > - rebase to the latest for-main > - patchset reconstruct > > v4: > - patchset break down and reconstruct > > v3: > - sperate a single patch 6 to two different patches > > v2: > - review comments addressed > > Kai Ji (10): > common/qat: define build op request and dequeue op > crypto/qat: sym build op request specific implementation > crypto/qat: qat generation specific enqueue > crypto/qat: rework session APIs > crypto/qat: rework asymmetric crypto build operation > crypto/qat: unify qat sym pmd apis > crypto/qat: unify qat asym pmd apis > crypto/qat: op burst data path rework > crypto/qat: raw dp api integration > crypto/qat: support out of place SG list Reword the patch titles as follows. crypto/qat: support out of place SG list crypto/qat: unify raw data path functions crypto/qat: rework burst data path crypto/qat: unify asymmetric functions crypto/qat: unify symmetric functions crypto/qat: rework asymmetric op build operation crypto/qat: rework session functions crypto/qat: add generation specific enqueue crypto/qat: support symmetric build op request common/qat: define build request and dequeue ops Infact I changed some of the descriptions also. Please reword the descriptions also. > > drivers/common/qat/meson.build | 6 +- > drivers/common/qat/qat_device.c | 4 +- > drivers/common/qat/qat_qp.c | 42 +- > drivers/common/qat/qat_qp.h | 54 +- > drivers/compress/qat/qat_comp_pmd.c | 14 +- > drivers/crypto/qat/dev/qat_asym_pmd_gen1.c | 9 +- > drivers/crypto/qat/dev/qat_crypto_pmd_gen2.c | 93 +- > drivers/crypto/qat/dev/qat_crypto_pmd_gen3.c | 490 ++++++++- > drivers/crypto/qat/dev/qat_crypto_pmd_gen4.c | 257 ++++- > drivers/crypto/qat/dev/qat_crypto_pmd_gens.h | 913 ++++++++++++++++- > drivers/crypto/qat/dev/qat_sym_pmd_gen1.c | 942 +++++++++++++++++- > drivers/crypto/qat/qat_asym.c | 303 +++++- > drivers/crypto/qat/qat_asym.h | 79 +- > drivers/crypto/qat/qat_asym_pmd.c | 231 ----- > drivers/crypto/qat/qat_asym_pmd.h | 54 - > drivers/crypto/qat/qat_crypto.h | 16 +- > drivers/crypto/qat/qat_sym.c | 979 ++++++------------ > drivers/crypto/qat/qat_sym.h | 148 ++- > drivers/crypto/qat/qat_sym_hw_dp.c | 995 ------------------- > drivers/crypto/qat/qat_sym_pmd.c | 251 ----- > drivers/crypto/qat/qat_sym_pmd.h | 95 -- > drivers/crypto/qat/qat_sym_session.c | 115 +-- > drivers/crypto/qat/qat_sym_session.h | 15 +- > 23 files changed, 3582 insertions(+), 2523 deletions(-) > delete mode 100644 drivers/crypto/qat/qat_asym_pmd.c > delete mode 100644 drivers/crypto/qat/qat_asym_pmd.h > delete mode 100644 drivers/crypto/qat/qat_sym_hw_dp.c > delete mode 100644 drivers/crypto/qat/qat_sym_pmd.c > delete mode 100644 drivers/crypto/qat/qat_sym_pmd.h > Individual patches do not compile ninja: Entering directory `./build-gcc-shared' [9/9] Linking target drivers/librte_common_qat.so.22.1. ninja: Entering directory `./build-clang-static' [1/27] Compiling C object 'drivers/a715181@@tmp_rte_common_qat@sta/crypto_qat_dev_qat_crypto_pmd_gen4.c.o'. FAILED: drivers/a715181@@tmp_rte_common_qat@sta/crypto_qat_dev_qat_crypto_pmd_gen4.c.o clang -Idrivers/a715181@@tmp_rte_common_qat@sta -Idrivers -I../drivers -Idrivers/common/qat -I../drivers/common/qat -I../drivers/common/qat/qat_adf -I../drivers/common/qat/../../crypto/qat -I../drivers/common/qat/../../compress/qat -Idrivers/bus/pci -I../drivers/bus/pci -I../drivers/bus/pci/linux -I. -I../ -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/telemetry/../metrics -I../lib/telemetry/../metrics -Ilib/telemetry -I../lib/telemetry -Ilib/pci -I../lib/pci -Ilib/cryptodev -I../lib/cryptodev -Ilib/mbuf -I../lib/mbuf -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/rcu -I../lib/rcu -Ilib/net -I../lib/net -Ilib/compressdev -I../lib/compressdev -Ilib/security -I../lib/security -Xclang -fcolor-diagnostics -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Werror -O2 -g -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-address-of-packed-member -Wno-missing-field-initializers -D_GNU_SOURCE -fPIC -march=native -DALLOW_EXPERIMENTAL_API -DALLOW_INTERNAL_API -DBUILD_QAT_SYM -DBUILD_QAT_ASYM -DRTE_LOG_DEFAULT_LOGTYPE=pmd.common.qat -MD -MQ 'drivers/a715181@@tmp_rte_common_qat@sta/crypto_qat_dev_qat_crypto_pmd_gen4.c.o' -MF 'drivers/a715181@@tmp_rte_common_qat@sta/crypto_qat_dev_qat_crypto_pmd_gen4.c.o.d' -o 'drivers/a715181@@tmp_rte_common_qat@sta/crypto_qat_dev_qat_crypto_pmd_gen4.c.o' -c ../drivers/crypto/qat/dev/qat_crypto_pmd_gen4.c ../drivers/crypto/qat/dev/qat_crypto_pmd_gen4.c:107:1: error: unused function 'enqueue_one_aead_job_gen4' [-Werror,-Wunused-function] enqueue_one_aead_job_gen4(struct qat_sym_session *ctx, ^ 1 error generated. [2/27] Compiling C object 'drivers/a715181@@tmp_rte_common_qat@sta/crypto_qat_dev_qat_crypto_pmd_gen3.c.o'. FAILED: drivers/a715181@@tmp_rte_common_qat@sta/crypto_qat_dev_qat_crypto_pmd_gen3.c.o clang -Idrivers/a715181@@tmp_rte_common_qat@sta -Idrivers -I../drivers -Idrivers/common/qat -I../drivers/common/qat -I../drivers/common/qat/qat_adf -I../drivers/common/qat/../../crypto/qat -I../drivers/common/qat/../../compress/qat -Idrivers/bus/pci -I../drivers/bus/pci -I../drivers/bus/pci/linux -I. -I../ -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/telemetry/../metrics -I../lib/telemetry/../metrics -Ilib/telemetry -I../lib/telemetry -Ilib/pci -I../lib/pci -Ilib/cryptodev -I../lib/cryptodev -Ilib/mbuf -I../lib/mbuf -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/rcu -I../lib/rcu -Ilib/net -I../lib/net -Ilib/compressdev -I../lib/compressdev -Ilib/security -I../lib/security -Xclang -fcolor-diagnostics -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Werror -O2 -g -include rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-address-of-packed-member -Wno-missing-field-initializers -D_GNU_SOURCE -fPIC -march=native -DALLOW_EXPERIMENTAL_API -DALLOW_INTERNAL_API -DBUILD_QAT_SYM -DBUILD_QAT_ASYM -DRTE_LOG_DEFAULT_LOGTYPE=pmd.common.qat -MD -MQ 'drivers/a715181@@tmp_rte_common_qat@sta/crypto_qat_dev_qat_crypto_pmd_gen3.c.o' -MF 'drivers/a715181@@tmp_rte_common_qat@sta/crypto_qat_dev_qat_crypto_pmd_gen3.c.o.d' -o 'drivers/a715181@@tmp_rte_common_qat@sta/crypto_qat_dev_qat_crypto_pmd_gen3.c.o' -c ../drivers/crypto/qat/dev/qat_crypto_pmd_gen3.c ../drivers/crypto/qat/dev/qat_crypto_pmd_gen3.c:147:1: error: unused function 'enqueue_one_aead_job_gen3' [-Werror,-Wunused-function] enqueue_one_aead_job_gen3(struct qat_sym_session *ctx, ^ ../drivers/crypto/qat/dev/qat_crypto_pmd_gen3.c:178:1: error: unused function 'enqueue_one_auth_job_gen3' [-Werror,-Wunused-function] enqueue_one_auth_job_gen3(struct qat_sym_session *ctx, ^ 2 errors generated. ninja: build stopped: subcommand failed.