The following changes since commit cfea1f3048d1bfda61036e6f823949fba4d692d4:
app/testpmd: print statistics periodically (2017-07-06 14:03:34 +0200) are available in the git repository at: http://dpdk.org/git/next/dpdk-next-crypto for you to fetch changes up to a6d2f08d9bed5b366c5a96cc841e581ff6b86caa: app/crypto-perf: wait for cores launched by app (2017-07-06 16:15:50 +0100) ---------------------------------------------------------------- Akhil Goyal (6): bus/fslmc: add macros to get/set fle context crypto/dpaa2_sec: add per dev mempool to store fle crypto/dpaa2_sec: add HW desc support for ctr crypto/dpaa2_sec: add HW desc support for aes-gcm crypto/dpaa2_sec: add support for aes-gcm and ctr crypto/dpaa2_sec: update driver name string Fiona Trahe (1): crypto/qat: fix possible out-of-bounds error Kirill Rybalchenko (2): crypto/scheduler: add multicore scheduling mode app/crypto-perf: wait for cores launched by app Pablo de Lara (38): crypto/qat: fix typo cryptodev: move session type to generic crypto op cryptodev: replace enums with 1-byte variables cryptodev: remove opaque data pointer in crypto op cryptodev: do not store pointer to op specific params cryptodev: remove useless alignment cryptodev: add crypto op helper macros test/crypto: move IV to crypto op private data test/crypto-perf: move IV to crypto op private data app/crypto-perf: move IV to crypto op private data examples/l2fwd-crypto: move IV to crypto op private data examples/ipsec-secgw: move IV to crypto op private data cryptodev: pass IV as offset cryptodev: move IV parameters to crypto session cryptodev: add auth IV cryptodev: do not use AAD in wireless algorithms cryptodev: remove AAD length from crypto op cryptodev: remove digest length from crypto op cryptodev: set AES-GMAC as auth-only algo cryptodev: add AEAD specific data cryptodev: add AEAD parameters in crypto operation examples/l2fwd-crypto: avoid too many tabs app/test-crypto-perf: add AEAD parameters examples/ipsec-secgw: add AEAD parameters examples/l2fwd-crypto: add AEAD parameters cryptodev: use AES-GCM/CCM as AEAD algorithms cryptodev: remove AAD from authentication structure crypto/aesni_mb: support IPSec Multi-buffer lib v0.46 test/crypto: add 12-byte IV AES-CTR test cases crypto/aesni_gcm: migrate to Multi-buffer library test/crypto: rename some tests test/crypto: add AES GCM 192 tests test/crypto: extend AES-GCM 192/256 to other PMDs cryptodev: remove unused cryptodev session structure cryptodev: move session init out of session pool creation cryptodev: add mempool pointer in queue pair setup cryptodev: remove session init internal function doc: add new crypto session information Sergio Gonzalez Monroy (3): app/crypto-perf: fix digest data for chained mbufs app/crypto-perf: return crypto ops to mempool in bulk app/crypto-perf: set crypto op pool cache Slawomir Mrozowicz (9): cryptodev: remove crypto device type enumeration cryptodev: remove crypto device driver name cryptodev: add private session size retrieval function cryptodev: do not create session mempool internally cryptodev: change attach session to queue pair API cryptodev: remove device id from crypto session cryptodev: remove driver id from session cryptodev: remove mempool from session cryptodev: support device independent sessions app/test-crypto-perf/cperf.h | 5 +- app/test-crypto-perf/cperf_ops.c | 274 ++- app/test-crypto-perf/cperf_ops.h | 7 +- app/test-crypto-perf/cperf_options.h | 24 +- app/test-crypto-perf/cperf_options_parsing.c | 236 +- app/test-crypto-perf/cperf_test_latency.c | 92 +- app/test-crypto-perf/cperf_test_latency.h | 5 +- app/test-crypto-perf/cperf_test_throughput.c | 44 +- app/test-crypto-perf/cperf_test_throughput.h | 5 +- app/test-crypto-perf/cperf_test_vector_parsing.c | 98 +- app/test-crypto-perf/cperf_test_vectors.c | 172 +- app/test-crypto-perf/cperf_test_vectors.h | 20 +- app/test-crypto-perf/cperf_test_verify.c | 37 +- app/test-crypto-perf/cperf_test_verify.h | 5 +- app/test-crypto-perf/data/aes_cbc_128_sha.data | 2 +- app/test-crypto-perf/data/aes_cbc_192_sha.data | 2 +- app/test-crypto-perf/data/aes_cbc_256_sha.data | 2 +- app/test-crypto-perf/main.c | 184 +- devtools/test-build.sh | 4 +- doc/guides/cryptodevs/aesni_gcm.rst | 63 +- doc/guides/cryptodevs/aesni_mb.rst | 21 +- doc/guides/cryptodevs/dpaa2_sec.rst | 9 +- doc/guides/cryptodevs/features/aesni_gcm.ini | 4 +- doc/guides/cryptodevs/features/dpaa2_sec.ini | 8 +- doc/guides/cryptodevs/openssl.rst | 4 +- doc/guides/cryptodevs/qat.rst | 4 +- doc/guides/cryptodevs/scheduler.rst | 25 + doc/guides/prog_guide/cryptodev_lib.rst | 169 +- doc/guides/prog_guide/img/crypto_xform_chain.svg | 8 +- doc/guides/prog_guide/img/cryptodev_sym_sess.svg | 418 +++- doc/guides/rel_notes/release_17_08.rst | 97 + doc/guides/sample_app_ug/ipsec_secgw.rst | 45 +- doc/guides/sample_app_ug/l2_forward_crypto.rst | 41 +- doc/guides/tools/cryptoperf.rst | 59 +- drivers/bus/fslmc/portal/dpaa2_hw_pvt.h | 7 + drivers/crypto/aesni_gcm/Makefile | 9 +- drivers/crypto/aesni_gcm/aesni_gcm_ops.h | 97 +- drivers/crypto/aesni_gcm/aesni_gcm_pmd.c | 406 ++-- drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c | 89 +- drivers/crypto/aesni_gcm/aesni_gcm_pmd_private.h | 46 +- drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c | 66 +- drivers/crypto/aesni_mb/rte_aesni_mb_pmd_ops.c | 79 +- drivers/crypto/aesni_mb/rte_aesni_mb_pmd_private.h | 8 + drivers/crypto/armv8/rte_armv8_pmd.c | 70 +- drivers/crypto/armv8/rte_armv8_pmd_ops.c | 57 +- drivers/crypto/armv8/rte_armv8_pmd_private.h | 12 +- drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c | 543 ++++- drivers/crypto/dpaa2_sec/dpaa2_sec_priv.h | 126 +- drivers/crypto/dpaa2_sec/hw/desc/algo.h | 228 +- drivers/crypto/dpaa2_sec/hw/desc/ipsec.h | 19 +- drivers/crypto/kasumi/rte_kasumi_pmd.c | 139 +- drivers/crypto/kasumi/rte_kasumi_pmd_ops.c | 60 +- drivers/crypto/kasumi/rte_kasumi_pmd_private.h | 7 +- drivers/crypto/null/null_crypto_pmd.c | 58 +- drivers/crypto/null/null_crypto_pmd_ops.c | 64 +- drivers/crypto/null/null_crypto_pmd_private.h | 3 + drivers/crypto/openssl/rte_openssl_pmd.c | 257 +- drivers/crypto/openssl/rte_openssl_pmd_ops.c | 159 +- drivers/crypto/openssl/rte_openssl_pmd_private.h | 18 +- drivers/crypto/qat/qat_adf/qat_algs.h | 11 +- drivers/crypto/qat/qat_adf/qat_algs_build_desc.c | 9 +- drivers/crypto/qat/qat_crypto.c | 445 +++- drivers/crypto/qat/qat_crypto.h | 28 +- drivers/crypto/qat/qat_crypto_capabilities.h | 82 +- drivers/crypto/qat/qat_qp.c | 2 +- drivers/crypto/qat/rte_qat_cryptodev.c | 7 +- drivers/crypto/scheduler/Makefile | 1 + drivers/crypto/scheduler/rte_cryptodev_scheduler.c | 29 +- drivers/crypto/scheduler/rte_cryptodev_scheduler.h | 9 + drivers/crypto/scheduler/scheduler_failover.c | 45 +- drivers/crypto/scheduler/scheduler_multicore.c | 373 +++ .../crypto/scheduler/scheduler_pkt_size_distr.c | 18 - drivers/crypto/scheduler/scheduler_pmd.c | 84 +- drivers/crypto/scheduler/scheduler_pmd_ops.c | 80 +- drivers/crypto/scheduler/scheduler_pmd_private.h | 16 +- drivers/crypto/scheduler/scheduler_roundrobin.c | 41 - drivers/crypto/snow3g/rte_snow3g_pmd.c | 131 +- drivers/crypto/snow3g/rte_snow3g_pmd_ops.c | 60 +- drivers/crypto/snow3g/rte_snow3g_pmd_private.h | 7 +- drivers/crypto/zuc/rte_zuc_pmd.c | 111 +- drivers/crypto/zuc/rte_zuc_pmd_ops.c | 62 +- drivers/crypto/zuc/rte_zuc_pmd_private.h | 7 +- examples/ipsec-secgw/esp.c | 245 +- examples/ipsec-secgw/ipsec-secgw.c | 41 +- examples/ipsec-secgw/ipsec.c | 11 +- examples/ipsec-secgw/ipsec.h | 11 +- examples/ipsec-secgw/sa.c | 287 ++- examples/l2fwd-crypto/main.c | 794 +++++-- lib/librte_cryptodev/rte_crypto.h | 39 +- lib/librte_cryptodev/rte_crypto_sym.h | 620 ++--- lib/librte_cryptodev/rte_cryptodev.c | 380 +-- lib/librte_cryptodev/rte_cryptodev.h | 299 ++- lib/librte_cryptodev/rte_cryptodev_pmd.h | 60 +- lib/librte_cryptodev/rte_cryptodev_version.map | 13 +- mk/rte.app.mk | 3 +- test/test/test_cryptodev.c | 2509 +++++++++++--------- test/test/test_cryptodev.h | 20 +- test/test/test_cryptodev_aes_test_vectors.h | 264 +- test/test/test_cryptodev_blockcipher.c | 128 +- test/test/test_cryptodev_blockcipher.h | 3 +- test/test/test_cryptodev_des_test_vectors.h | 24 +- test/test/test_cryptodev_gcm_test_vectors.h | 386 ++- test/test/test_cryptodev_hash_test_vectors.h | 36 +- .../test/test_cryptodev_kasumi_hash_test_vectors.h | 18 +- test/test/test_cryptodev_kasumi_test_vectors.h | 22 +- test/test/test_cryptodev_perf.c | 1082 +++++---- .../test/test_cryptodev_snow3g_hash_test_vectors.h | 16 +- test/test/test_cryptodev_snow3g_test_vectors.h | 26 +- test/test/test_cryptodev_zuc_test_vectors.h | 40 +- 109 files changed, 9429 insertions(+), 4426 deletions(-) create mode 100644 drivers/crypto/scheduler/scheduler_multicore.c