All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Kovacevic, Marko" <marko.kovacevic@intel.com>
To: dev@dpdk.org
Cc: pablo.de.lara.guarch@intel.com, "Kovacevic,
	Marko" <marko.kovacevic@intel.com>
Subject: [PATCH v2 2/2] crypto/aesni_gcm: support IPsec Multi-buffer lib v0.49
Date: Tue,  3 Apr 2018 14:30:00 +0100	[thread overview]
Message-ID: <20180403133000.34131-2-marko.kovacevic@intel.com> (raw)
In-Reply-To: <20180403133000.34131-1-marko.kovacevic@intel.com>

Adds support for the v0.49 of the IPsec Multi-buffer lib,
which now gets compiled and installed as a shared object.
Therefore, there is no need to pass the AESNI_MULTI_BUFFER_LIB_PATH

Signed-off-by: Marko Kovacevic <marko.kovacevic@intel.com>

---

 V2: Added commit body message
---
 devtools/test-build.sh                   |  7 ++++---
 doc/guides/cryptodevs/aesni_gcm.rst      | 13 ++++++-------
 drivers/crypto/aesni_gcm/Makefile        | 10 +---------
 drivers/crypto/aesni_gcm/aesni_gcm_ops.h |  3 +--
 mk/rte.app.mk                            |  2 +-
 5 files changed, 13 insertions(+), 22 deletions(-)

diff --git a/devtools/test-build.sh b/devtools/test-build.sh
index 600a763..20c261c 100755
--- a/devtools/test-build.sh
+++ b/devtools/test-build.sh
@@ -33,7 +33,6 @@
 default_path=$PATH
 
 # Load config options:
-# - AESNI_MULTI_BUFFER_LIB_PATH
 # - ARMV8_CRYPTO_LIB_PATH
 # - DPDK_BUILD_TEST_CONFIGS (defconfig1+option1+option2 defconfig2)
 # - DPDK_DEP_ARCHIVE
@@ -44,6 +43,7 @@ default_path=$PATH
 # - DPDK_DEP_PCAP (y/[n])
 # - DPDK_DEP_SSL (y/[n])
 # - DPDK_DEP_AESNI_MB (y/[n])
+# - DPDK_DEP_AESNI_GCM (y/[n])
 # - DPDK_DEP_SZE (y/[n])
 # - DPDK_DEP_ZLIB (y/[n])
 # - DPDK_MAKE_JOBS (int)
@@ -129,6 +129,7 @@ reset_env ()
 	unset DPDK_DEP_PCAP
 	unset DPDK_DEP_SSL
 	unset DPDK_DEP_AESNI_MB
+	unset DPDK_DEP_AESNI_GCM
 	unset DPDK_DEP_SZE
 	unset DPDK_DEP_ZLIB
 	unset AESNI_MULTI_BUFFER_LIB_PATH
@@ -184,10 +185,10 @@ config () # <directory> <target> <options>
 		sed -ri               's,(PCAP=)n,\1y,' $1/.config
 		test "$DPDK_DEP_AESNI_MB" != y || \
 		sed -ri       's,(PMD_AESNI_MB=)n,\1y,' $1/.config
+		test "$DPDK_DEP_AESNI_GCM" != y || \
+		sed -ri       's,(PMD_AESNI_GCM=)n,\1y,' $1/.config
 		test -z "$ARMV8_CRYPTO_LIB_PATH" || \
 		sed -ri   's,(PMD_ARMV8_CRYPTO=)n,\1y,' $1/.config
-		test -z "$AESNI_MULTI_BUFFER_LIB_PATH" || \
-		sed -ri      's,(PMD_AESNI_GCM=)n,\1y,' $1/.config
 		test -z "$LIBSSO_SNOW3G_PATH" || \
 		sed -ri         's,(PMD_SNOW3G=)n,\1y,' $1/.config
 		test -z "$LIBSSO_KASUMI_PATH" || \
diff --git a/doc/guides/cryptodevs/aesni_gcm.rst b/doc/guides/cryptodevs/aesni_gcm.rst
index ffd6ba9..01590e8 100644
--- a/doc/guides/cryptodevs/aesni_gcm.rst
+++ b/doc/guides/cryptodevs/aesni_gcm.rst
@@ -36,12 +36,13 @@ Installation
 To build DPDK with the AESNI_GCM_PMD the user is required to download the multi-buffer
 library from `here <https://github.com/01org/intel-ipsec-mb>`_
 and compile it on their user system before building DPDK.
-The latest version of the library supported by this PMD is v0.48, which
-can be downloaded in `<https://github.com/01org/intel-ipsec-mb/archive/v0.48.zip>`_.
+The latest version of the library supported by this PMD is v0.49, which
+can be downloaded in `<https://github.com/01org/intel-ipsec-mb/archive/v0.49.zip>`_.
 
 .. code-block:: console
 
-	make
+    make
+    make install
 
 As a reference, the following table shows a mapping between the past DPDK versions
 and the external crypto libraries supported by them:
@@ -55,7 +56,8 @@ and the external crypto libraries supported by them:
    =============  ================================
    16.04 - 16.11  Multi-buffer library 0.43 - 0.44
    17.02 - 17.05  ISA-L Crypto v2.18
-   17.08+         Multi-buffer library 0.46+
+   17.08 - 18.02  Multi-buffer library 0.46 - 0.48
+   18.05          Multi-buffer library 0.49
    =============  ================================
 
 
@@ -64,9 +66,6 @@ Initialization
 
 In order to enable this virtual crypto PMD, user must:
 
-* Export the environmental variable AESNI_MULTI_BUFFER_LIB_PATH with the path where
-  the library was extracted.
-
 * Build the multi buffer library (explained in Installation section).
 
 * Set CONFIG_RTE_LIBRTE_PMD_AESNI_GCM=y in config/common_base.
diff --git a/drivers/crypto/aesni_gcm/Makefile b/drivers/crypto/aesni_gcm/Makefile
index d06c544..0a5c1a8 100644
--- a/drivers/crypto/aesni_gcm/Makefile
+++ b/drivers/crypto/aesni_gcm/Makefile
@@ -3,12 +3,6 @@
 
 include $(RTE_SDK)/mk/rte.vars.mk
 
-ifneq ($(MAKECMDGOALS),clean)
-ifeq ($(AESNI_MULTI_BUFFER_LIB_PATH),)
-$(error "Please define AESNI_MULTI_BUFFER_LIB_PATH environment variable")
-endif
-endif
-
 # library name
 LIB = librte_pmd_aesni_gcm.a
 
@@ -23,9 +17,7 @@ LIBABIVER := 1
 EXPORT_MAP := rte_pmd_aesni_gcm_version.map
 
 # external library dependencies
-CFLAGS += -I$(AESNI_MULTI_BUFFER_LIB_PATH)
-CFLAGS += -I$(AESNI_MULTI_BUFFER_LIB_PATH)/include
-LDLIBS += -L$(AESNI_MULTI_BUFFER_LIB_PATH) -lIPSec_MB
+LDLIBS += -lIPSec_MB
 LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring
 LDLIBS += -lrte_cryptodev
 LDLIBS += -lrte_bus_vdev
diff --git a/drivers/crypto/aesni_gcm/aesni_gcm_ops.h b/drivers/crypto/aesni_gcm/aesni_gcm_ops.h
index 59e504e..4506166 100644
--- a/drivers/crypto/aesni_gcm/aesni_gcm_ops.h
+++ b/drivers/crypto/aesni_gcm/aesni_gcm_ops.h
@@ -9,8 +9,7 @@
 #define LINUX
 #endif
 
-#include <gcm_defines.h>
-#include <aux_funcs.h>
+#include <intel-ipsec-mb.h>
 
 /** Supported vector modes */
 enum aesni_gcm_vector_mode {
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index b05a9ed..c68ce72 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -200,7 +200,7 @@ ifeq ($(CONFIG_RTE_LIBRTE_CRYPTODEV),y)
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_MB)    += -lrte_pmd_aesni_mb
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_MB)    += -lIPSec_MB
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_GCM)   += -lrte_pmd_aesni_gcm
-_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_GCM)   += -L$(AESNI_MULTI_BUFFER_LIB_PATH) -lIPSec_MB
+_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_GCM)   +=  -lIPSec_MB
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_OPENSSL)     += -lrte_pmd_openssl -lcrypto
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_NULL_CRYPTO) += -lrte_pmd_null_crypto
 _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_QAT)         += -lrte_pmd_qat -lcrypto
-- 
2.9.5

  reply	other threads:[~2018-04-03 13:29 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-27 12:14 [PATCH v1 1/2] crypto/aesni_mb: support IPsec MUlti-buffer lib v0.49 Kovacevic, Marko
2018-03-27 12:14 ` [PATCH v1 2/2] crypto/aesni_gcm: support IPsec Multi-buffer " Kovacevic, Marko
2018-03-30 15:16   ` De Lara Guarch, Pablo
2018-03-30 15:41     ` De Lara Guarch, Pablo
2018-03-30 15:16 ` [PATCH v1 1/2] crypto/aesni_mb: support IPsec MUlti-buffer " De Lara Guarch, Pablo
2018-03-30 15:40   ` De Lara Guarch, Pablo
2018-03-31 13:40 ` Thomas Monjalon
2018-04-03 13:29 ` [PATCH v2 " Kovacevic, Marko
2018-04-03 13:30   ` Kovacevic, Marko [this message]
2018-04-03 15:22   ` [PATCH v3 " Kovacevic, Marko
2018-04-03 15:22     ` [PATCH v3 2/2] crypto/aesni_gcm: support IPsec Multi-buffer " Kovacevic, Marko
2018-04-04 12:33       ` De Lara Guarch, Pablo
2018-04-04 12:32     ` [PATCH v3 1/2] crypto/aesni_mb: support IPsec MUlti-buffer " De Lara Guarch, Pablo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180403133000.34131-2-marko.kovacevic@intel.com \
    --to=marko.kovacevic@intel.com \
    --cc=dev@dpdk.org \
    --cc=pablo.de.lara.guarch@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.