[dpdk-dev] [PATCH v5 0/3] Chained Mbufs support in SW PMDs

De Lara Guarch, Pablo pablo.de.lara.guarch at intel.com
Mon Jan 16 20:00:13 CET 2017



> -----Original Message-----
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Tomasz Kulasek
> Sent: Friday, January 13, 2017 3:23 PM
> To: dev at dpdk.org
> Subject: [dpdk-dev] [PATCH v5 0/3] Chained Mbufs support in SW PMDs
> 
> This patch set adds support of scattered-gather list for SW PMDs.
> 
> As of now, application needs to reserve continuous block of memory for
> mbufs which is not always the case. Hence needed to support chaining of
> mbufs which are smaller in size but can be used if chained.
> 
> 
> Above work involves:
> --------------------
> 
>  a) Create mbuf functions to coalesce mbuf chains into a single mbuf.
>  b) For each software poll mode driver code to detect chained mbufs
>     support and coalesce these before preforming crypto.
>  c) Add relevant unit tests to test the functionality.
> 
> 
> Known limitations for openssl PMD:
> ----------------------------------
> 
> While libcrypto library expects continuous destination buffer for
> output of cipher operations, implementation of openssl PMD is limited
> the same way, and requires contiguous destination mbuf.
> 
> 
> changes in v5:
>  - rebased to the master of dpdk-next-crypto
> 
> changes in v4:
>  - separated "rte_pktmbuf_linearize" implementation from this patch set
>    and sent as new patch for better reviewing,
> 
> changes in v3:
>  - rebased to dpdk-next-crypto
>  - reused tests for AES GCM SGL support in opensll from "app/test: add
>    SGL tests to cryptodev QAT suite"
> 
> changes in v2:
>  - add support for sgl in openssl PMD
>  - rte_pktmbuf_coalesce replaced with rte_pktmbuf_linearize
>  - extended test vector data for aes gcm from 60 to 2048 bytes
> 
> 
> Tomasz Kulasek (3):
>   crypto: add sgl support in sw PMDs
>   crypto: add sgl support in openssl PMD
>   test: add sgl unit tests for crypto devices
> 
>  app/test/test_cryptodev.c                  |  386 ++++++++++++++++++-
>  app/test/test_cryptodev.h                  |  138 +++++++
>  app/test/test_cryptodev_aes_test_vectors.h |   52 +++
>  app/test/test_cryptodev_blockcipher.c      |   90 ++---
>  app/test/test_cryptodev_blockcipher.h      |    1 +
>  app/test/test_cryptodev_gcm_test_vectors.h |  553
> ++++++++++++++++++++++++++++
>  doc/guides/cryptodevs/openssl.rst          |    3 +-
>  drivers/crypto/aesni_gcm/aesni_gcm_pmd.c   |   14 +
>  drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c |   19 +-
>  drivers/crypto/kasumi/rte_kasumi_pmd.c     |   13 +
>  drivers/crypto/null/null_crypto_pmd.c      |    3 +-
>  drivers/crypto/openssl/rte_openssl_pmd.c   |  329 +++++++++++++----
>  drivers/crypto/snow3g/rte_snow3g_pmd.c     |   15 +
>  drivers/crypto/zuc/rte_zuc_pmd.c           |   13 +
>  lib/librte_cryptodev/rte_cryptodev.c       |    4 +-
>  lib/librte_cryptodev/rte_cryptodev.h       |    2 +
>  16 files changed, 1507 insertions(+), 128 deletions(-)
> 
> --
> 1.7.9.5

Applied to dpdk-next-crypto.
Thanks,

Pablo


More information about the dev mailing list