[pull-request] next-crypto 19.02 rc2

Message ID 20190111060843.34487-1-pablo.de.lara.guarch@intel.com
State Accepted, archived
Delegated to: Thomas Monjalon
Headers show
Series
  • [pull-request] next-crypto 19.02 rc2
Related show

Pull-request

http://dpdk.org/git/next/dpdk-next-crypto

Checks

Context Check Description
ci/Intel-compilation success Compilation OK

Message

De Lara Guarch, Pablo Jan. 11, 2019, 6:08 a.m.
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

Comments

Thomas Monjalon Jan. 11, 2019, 5:49 p.m. | #1
11/01/2019 07:08, Pablo de Lara:
>   http://dpdk.org/git/next/dpdk-next-crypto 

"Meson" compilation is not working if IPSec_MB is not installed.

"Make" compilation has no such big issue but it does not respect
EXTRA_CFLAGS when assuming IMB_HDR = /usr/include/intel-ipsec-mb.h
Thomas Monjalon Jan. 14, 2019, 9:12 a.m. | #2
11/01/2019 18:49, Thomas Monjalon:
> 11/01/2019 07:08, Pablo de Lara:
> >   http://dpdk.org/git/next/dpdk-next-crypto 
> 
> "Meson" compilation is not working if IPSec_MB is not installed.

This meson issue has been fixed with help of Pablo.

Another issue has been fixed in vhost-crypto patches (moving change
from one patch to another for fixing build).

> "Make" compilation has no such big issue but it does not respect
> EXTRA_CFLAGS when assuming IMB_HDR = /usr/include/intel-ipsec-mb.h

This makefile issue should be fixed later.

The fixed tree is integrated in master.