From patchwork Fri Jan 11 06:08:43 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "De Lara Guarch, Pablo" X-Patchwork-Id: 49726 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id DE4811B8BF; Fri, 11 Jan 2019 15:16:44 +0100 (CET) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by dpdk.org (Postfix) with ESMTP id 0013B1B61B for ; Fri, 11 Jan 2019 15:16:42 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga106.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 11 Jan 2019 06:16:42 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,466,1539673200"; d="scan'208";a="125153874" Received: from silpixa00399466.ir.intel.com (HELO silpixa00399466.ger.corp.intel.com) ([10.237.223.220]) by FMSMGA003.fm.intel.com with ESMTP; 11 Jan 2019 06:16:40 -0800 From: Pablo de Lara To: thomas@monjalon.net Cc: dev@dpdk.org Date: Fri, 11 Jan 2019 06:08:43 +0000 Message-Id: <20190111060843.34487-1-pablo.de.lara.guarch@intel.com> X-Mailer: git-send-email 2.19.2 MIME-Version: 1.0 Subject: [dpdk-dev] [pull-request] next-crypto 19.02 rc2 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The following changes since commit a958a5c07f4b5e715921a2f22c931142417287a5: net/softnic: support service cores (2019-01-10 16:04:44 +0100) are available in the Git repository at: http://dpdk.org/git/next/dpdk-next-crypto for you to fetch changes up to 91ed77bbe00512330e69636abc0c939c5de4c46d: test/crypto: remove unsupported SGL tests on AESNI MB PMD (2019-01-11 02:57:13 +0000) ---------------------------------------------------------------- Akhil Goyal (2): crypto/dpaa_sec: support same session flows on multi cores crypto/dpaa2_sec: fix FLC address for physical mode Amr Mokhtar (1): app/bbdev: fix return value check Anoob Joseph (1): crypto/octeontx: remove usage of DEPDIRS Fan Zhang (20): drivers/crypto: fix PMD memory leak doc: fix aesni mb guide crypto/aesni_mb: rename files crypto/aesni_mb: use architecture independent macros doc: update aesni mb guide crypto/aesni_mb: support AES-GMAC crypto/aesni_mb: support plain SHA cryptodev: change queue pair configure structure cryptodev: add sym session mempool create app/test-crypto-perf: use separate session mempools net/softnic: use separate session mempools examples: use separate session mempools vhost/crypto: use separate session mempools test/crypto: use separate session mempools cryptodev: add sym session header size API cryptodev: update symmetric session structure cryptodev: add user data size to symmetric session cryptodev: add reference count to session private data cryptodev: add opaque data field to symmetric session examples/fips_validate: add power on self test Fiona Trahe (2): test/crypto: fix misleading trace message test/crypto: remove unsupported SGL tests on AESNI MB PMD Hemant Agrawal (1): crypto/dpaa_sec: support PDCP offload Konstantin Ananyev (19): security: add opaque userdata pointer into security session net: add ESP trailer structure definition lib: introduce ipsec library ipsec: add SA data-path API ipsec: implement SA data-path API ipsec: rework SA replay window/SQN for MT environment ipsec: helper functions to group completed crypto-ops test/ipsec: introduce functional test doc: add IPsec library guide examples/ipsec-secgw: allow user to disable some Rx/Tx offloads examples/ipsec-secgw: allow to specify neighbour MAC address examples/ipsec-secgw: fix crypto-op might never get dequeued examples/ipsec-secgw: fix outbound codepath for single SA examples/ipsec-secgw: make local variables static examples/ipsec-secgw: fix inbound SA checking examples/ipsec-secgw: make app to use ipsec library examples/ipsec-secgw: make data-path to use ipsec library examples/ipsec-secgw: add scripts for functional test doc: update ipsec-secgw guide and relelase notes Lee Daly (2): test/compress: add checksum tests compress/isal: enable checksum support in driver Tomasz Jozwiak (2): compress/qat: add compression on DH895x compress/qat: fix returned status on overflow MAINTAINERS | 8 +- app/test-bbdev/test_bbdev_perf.c | 10 +- app/test-crypto-perf/cperf.h | 1 + app/test-crypto-perf/cperf_ops.c | 11 +- app/test-crypto-perf/cperf_ops.h | 2 +- app/test-crypto-perf/cperf_test_latency.c | 5 +- app/test-crypto-perf/cperf_test_latency.h | 1 + app/test-crypto-perf/cperf_test_pmd_cyclecount.c | 5 +- app/test-crypto-perf/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 | 105 +- config/common_base | 5 + doc/guides/compressdevs/features/isal.ini | 2 + doc/guides/compressdevs/isal.rst | 30 +- doc/guides/compressdevs/qat_comp.rst | 1 + doc/guides/cryptodevs/aesni_mb.rst | 16 +- doc/guides/prog_guide/cryptodev_lib.rst | 90 +- doc/guides/prog_guide/img/cryptodev_sym_sess.svg | 725 +++--- doc/guides/prog_guide/index.rst | 1 + doc/guides/prog_guide/ipsec_lib.rst | 168 ++ doc/guides/rel_notes/deprecation.rst | 14 +- doc/guides/rel_notes/release_19_02.rst | 67 +- doc/guides/sample_app_ug/ipsec_secgw.rst | 159 +- drivers/compress/isal/isal_compress_pmd.c | 82 +- drivers/compress/isal/isal_compress_pmd_ops.c | 4 +- drivers/compress/qat/qat_comp.c | 37 +- drivers/compress/qat/qat_comp_pmd.c | 4 - drivers/crypto/aesni_gcm/Makefile | 1 + drivers/crypto/aesni_gcm/aesni_gcm_pmd.c | 10 +- drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c | 10 +- drivers/crypto/aesni_gcm/aesni_gcm_pmd_private.h | 2 + drivers/crypto/aesni_gcm/meson.build | 1 + drivers/crypto/aesni_mb/Makefile | 27 +- drivers/crypto/aesni_mb/meson.build | 19 +- drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c | 351 ++- drivers/crypto/aesni_mb/rte_aesni_mb_pmd_compat.c | 1313 ++++++++++ drivers/crypto/aesni_mb/rte_aesni_mb_pmd_ops.c | 211 +- .../crypto/aesni_mb/rte_aesni_mb_pmd_ops_compat.c | 745 ++++++ drivers/crypto/aesni_mb/rte_aesni_mb_pmd_private.h | 61 +- drivers/crypto/armv8/Makefile | 1 + drivers/crypto/armv8/rte_armv8_pmd.c | 10 +- drivers/crypto/armv8/rte_armv8_pmd_ops.c | 5 +- drivers/crypto/armv8/rte_armv8_pmd_private.h | 2 + drivers/crypto/caam_jr/caam_jr.c | 3 +- drivers/crypto/ccp/ccp_pmd_ops.c | 5 +- drivers/crypto/ccp/ccp_pmd_private.h | 2 + drivers/crypto/ccp/rte_ccp_pmd.c | 9 +- drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c | 7 +- drivers/crypto/dpaa_sec/dpaa_sec.c | 324 ++- drivers/crypto/dpaa_sec/dpaa_sec.h | 221 +- drivers/crypto/kasumi/Makefile | 1 + drivers/crypto/kasumi/meson.build | 1 + drivers/crypto/kasumi/rte_kasumi_pmd.c | 10 +- drivers/crypto/kasumi/rte_kasumi_pmd_ops.c | 5 +- drivers/crypto/kasumi/rte_kasumi_pmd_private.h | 2 + drivers/crypto/mvsam/rte_mrvl_pmd_ops.c | 5 +- drivers/crypto/mvsam/rte_mrvl_pmd_private.h | 3 + drivers/crypto/null/null_crypto_pmd.c | 5 +- drivers/crypto/null/null_crypto_pmd_ops.c | 10 +- drivers/crypto/null/null_crypto_pmd_private.h | 2 + drivers/crypto/octeontx/Makefile | 7 - drivers/crypto/octeontx/otx_cryptodev_ops.c | 3 +- drivers/crypto/openssl/Makefile | 1 + drivers/crypto/openssl/meson.build | 1 + drivers/crypto/openssl/rte_openssl_pmd.c | 10 +- drivers/crypto/openssl/rte_openssl_pmd_ops.c | 10 +- drivers/crypto/openssl/rte_openssl_pmd_private.h | 2 + drivers/crypto/qat/qat_sym_pmd.c | 2 +- drivers/crypto/scheduler/scheduler_pmd_ops.c | 5 +- drivers/crypto/snow3g/Makefile | 1 + drivers/crypto/snow3g/rte_snow3g_pmd.c | 10 +- drivers/crypto/snow3g/rte_snow3g_pmd_ops.c | 10 +- drivers/crypto/snow3g/rte_snow3g_pmd_private.h | 2 + drivers/crypto/virtio/virtio_cryptodev.c | 6 +- drivers/crypto/zuc/Makefile | 1 + drivers/crypto/zuc/meson.build | 1 + drivers/crypto/zuc/rte_zuc_pmd.c | 10 +- drivers/crypto/zuc/rte_zuc_pmd_ops.c | 10 +- drivers/crypto/zuc/rte_zuc_pmd_private.h | 2 + drivers/net/softnic/rte_eth_softnic_cli.c | 52 +- drivers/net/softnic/rte_eth_softnic_cryptodev.c | 49 +- drivers/net/softnic/rte_eth_softnic_internals.h | 3 + examples/fips_validation/Makefile | 1 + examples/fips_validation/fips_dev_self_test.c | 1692 +++++++++++++ examples/fips_validation/fips_dev_self_test.h | 25 + examples/fips_validation/main.c | 120 +- examples/fips_validation/meson.build | 1 + examples/ip_pipeline/cli.c | 49 +- examples/ip_pipeline/cryptodev.c | 51 +- examples/ip_pipeline/cryptodev.h | 3 + examples/ip_pipeline/examples/flow_crypto.cli | 9 +- examples/ipsec-secgw/Makefile | 5 +- examples/ipsec-secgw/ipsec-secgw.c | 539 +++- examples/ipsec-secgw/ipsec.c | 103 +- examples/ipsec-secgw/ipsec.h | 69 + examples/ipsec-secgw/ipsec_process.c | 357 +++ examples/ipsec-secgw/meson.build | 6 +- examples/ipsec-secgw/parser.c | 91 + examples/ipsec-secgw/parser.h | 8 +- examples/ipsec-secgw/sa.c | 263 +- examples/ipsec-secgw/sp4.c | 35 +- examples/ipsec-secgw/sp6.c | 35 +- examples/ipsec-secgw/test/common_defs.sh | 162 ++ examples/ipsec-secgw/test/data_rxtx.sh | 62 + examples/ipsec-secgw/test/linux_test4.sh | 63 + examples/ipsec-secgw/test/linux_test6.sh | 64 + examples/ipsec-secgw/test/run_test.sh | 80 + .../test/trs_aescbc_sha1_common_defs.sh | 69 + examples/ipsec-secgw/test/trs_aescbc_sha1_defs.sh | 67 + .../test/trs_aescbc_sha1_esn_atom_defs.sh | 5 + .../ipsec-secgw/test/trs_aescbc_sha1_esn_defs.sh | 66 + .../ipsec-secgw/test/trs_aescbc_sha1_old_defs.sh | 5 + .../ipsec-secgw/test/trs_aesgcm_common_defs.sh | 60 + examples/ipsec-secgw/test/trs_aesgcm_defs.sh | 76 + .../ipsec-secgw/test/trs_aesgcm_esn_atom_defs.sh | 5 + examples/ipsec-secgw/test/trs_aesgcm_esn_defs.sh | 66 + .../test/trs_aesgcm_inline_crypto_defs.sh | 6 + .../test/trs_aesgcm_inline_crypto_old_defs.sh | 5 + examples/ipsec-secgw/test/trs_aesgcm_old_defs.sh | 5 + .../test/tun_aescbc_sha1_common_defs.sh | 68 + examples/ipsec-secgw/test/tun_aescbc_sha1_defs.sh | 70 + .../test/tun_aescbc_sha1_esn_atom_defs.sh | 5 + .../ipsec-secgw/test/tun_aescbc_sha1_esn_defs.sh | 70 + .../ipsec-secgw/test/tun_aescbc_sha1_old_defs.sh | 5 + .../ipsec-secgw/test/tun_aesgcm_common_defs.sh | 60 + examples/ipsec-secgw/test/tun_aesgcm_defs.sh | 80 + .../ipsec-secgw/test/tun_aesgcm_esn_atom_defs.sh | 5 + examples/ipsec-secgw/test/tun_aesgcm_esn_defs.sh | 70 + .../test/tun_aesgcm_inline_crypto_defs.sh | 6 + .../test/tun_aesgcm_inline_crypto_old_defs.sh | 5 + examples/ipsec-secgw/test/tun_aesgcm_old_defs.sh | 5 + examples/l2fwd-crypto/Makefile | 1 + examples/l2fwd-crypto/main.c | 66 +- examples/l2fwd-crypto/meson.build | 1 + examples/vhost_crypto/main.c | 22 +- lib/Makefile | 2 + lib/librte_cryptodev/Makefile | 5 +- lib/librte_cryptodev/meson.build | 5 +- lib/librte_cryptodev/rte_cryptodev.c | 192 +- lib/librte_cryptodev/rte_cryptodev.h | 75 +- lib/librte_cryptodev/rte_cryptodev_pmd.h | 16 +- lib/librte_cryptodev/rte_cryptodev_version.map | 2 + lib/librte_ipsec/Makefile | 27 + lib/librte_ipsec/crypto.h | 123 + lib/librte_ipsec/iph.h | 84 + lib/librte_ipsec/ipsec_sqn.h | 343 +++ lib/librte_ipsec/meson.build | 10 + lib/librte_ipsec/pad.h | 45 + lib/librte_ipsec/rte_ipsec.h | 154 ++ lib/librte_ipsec/rte_ipsec_group.h | 151 ++ lib/librte_ipsec/rte_ipsec_sa.h | 174 ++ lib/librte_ipsec/rte_ipsec_version.map | 15 + lib/librte_ipsec/sa.c | 1527 ++++++++++++ lib/librte_ipsec/sa.h | 106 + lib/librte_ipsec/ses.c | 52 + lib/librte_net/rte_esp.h | 10 +- lib/librte_security/Makefile | 4 +- lib/librte_security/meson.build | 3 +- lib/librte_security/rte_security.h | 2 + lib/librte_vhost/rte_vhost_crypto.h | 9 +- lib/librte_vhost/vhost_crypto.c | 8 +- lib/meson.build | 2 + mk/rte.app.mk | 2 + test/test/Makefile | 3 + test/test/meson.build | 3 + test/test/test_compressdev.c | 202 +- test/test/test_cryptodev.c | 277 ++- test/test/test_cryptodev_aes_test_vectors.h | 8 +- test/test/test_cryptodev_asym.c | 8 +- test/test/test_cryptodev_blockcipher.c | 12 +- test/test/test_cryptodev_blockcipher.h | 1 + test/test/test_cryptodev_hash_test_vectors.h | 54 +- test/test/test_event_crypto_adapter.c | 35 +- test/test/test_ipsec.c | 2565 ++++++++++++++++++++ 177 files changed, 15108 insertions(+), 1223 deletions(-) create mode 100644 doc/guides/prog_guide/ipsec_lib.rst create mode 100644 drivers/crypto/aesni_mb/rte_aesni_mb_pmd_compat.c create mode 100644 drivers/crypto/aesni_mb/rte_aesni_mb_pmd_ops_compat.c create mode 100644 examples/fips_validation/fips_dev_self_test.c create mode 100644 examples/fips_validation/fips_dev_self_test.h create mode 100644 examples/ipsec-secgw/ipsec_process.c create mode 100644 examples/ipsec-secgw/test/common_defs.sh create mode 100644 examples/ipsec-secgw/test/data_rxtx.sh create mode 100644 examples/ipsec-secgw/test/linux_test4.sh create mode 100644 examples/ipsec-secgw/test/linux_test6.sh create mode 100644 examples/ipsec-secgw/test/run_test.sh create mode 100644 examples/ipsec-secgw/test/trs_aescbc_sha1_common_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aescbc_sha1_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aescbc_sha1_esn_atom_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aescbc_sha1_esn_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aescbc_sha1_old_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aesgcm_common_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aesgcm_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aesgcm_esn_atom_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aesgcm_esn_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aesgcm_inline_crypto_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aesgcm_inline_crypto_old_defs.sh create mode 100644 examples/ipsec-secgw/test/trs_aesgcm_old_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aescbc_sha1_common_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aescbc_sha1_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aescbc_sha1_esn_atom_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aescbc_sha1_esn_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aescbc_sha1_old_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aesgcm_common_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aesgcm_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aesgcm_esn_atom_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aesgcm_esn_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aesgcm_inline_crypto_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aesgcm_inline_crypto_old_defs.sh create mode 100644 examples/ipsec-secgw/test/tun_aesgcm_old_defs.sh create mode 100644 lib/librte_ipsec/Makefile create mode 100644 lib/librte_ipsec/crypto.h create mode 100644 lib/librte_ipsec/iph.h create mode 100644 lib/librte_ipsec/ipsec_sqn.h create mode 100644 lib/librte_ipsec/meson.build create mode 100644 lib/librte_ipsec/pad.h create mode 100644 lib/librte_ipsec/rte_ipsec.h create mode 100644 lib/librte_ipsec/rte_ipsec_group.h create mode 100644 lib/librte_ipsec/rte_ipsec_sa.h create mode 100644 lib/librte_ipsec/rte_ipsec_version.map create mode 100644 lib/librte_ipsec/sa.c create mode 100644 lib/librte_ipsec/sa.h create mode 100644 lib/librte_ipsec/ses.c create mode 100644 test/test/test_ipsec.c