crypto/aesni_gcm: support IPsec Multi-buffer lib v0.49
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> Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
This commit is contained in:
parent
2a1e2da1bb
commit
dad3736481
@ -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
|
||||
@ -131,7 +130,6 @@ reset_env ()
|
||||
unset DPDK_DEP_IPSEC_MB
|
||||
unset DPDK_DEP_SZE
|
||||
unset DPDK_DEP_ZLIB
|
||||
unset AESNI_MULTI_BUFFER_LIB_PATH
|
||||
unset ARMV8_CRYPTO_LIB_PATH
|
||||
unset FLEXRAN_SDK
|
||||
unset LIBMUSDK_PATH
|
||||
@ -186,7 +184,7 @@ config () # <directory> <target> <options>
|
||||
sed -ri 's,(PMD_ARMV8_CRYPTO=)n,\1y,' $1/.config
|
||||
test "$DPDK_DEP_IPSEC_MB" != y || \
|
||||
sed -ri 's,(PMD_AESNI_MB=)n,\1y,' $1/.config
|
||||
test -z "$AESNI_MULTI_BUFFER_LIB_PATH" || \
|
||||
test "$DPDK_DEP_IPSEC_MB" != y || \
|
||||
sed -ri 's,(PMD_AESNI_GCM=)n,\1y,' $1/.config
|
||||
test -z "$LIBSSO_SNOW3G_PATH" || \
|
||||
sed -ri 's,(PMD_SNOW3G=)n,\1y,' $1/.config
|
||||
|
@ -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.
|
||||
|
@ -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
|
||||
|
@ -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 {
|
||||
|
@ -205,7 +205,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
|
||||
|
Loading…
Reference in New Issue
Block a user