11/12/2018 13:29, Fan Zhang:
> From: Lukasz Krakowiak <lukaszx.krakow...@intel.com>
> 
> This patch updates the aesni_mb to use IMB_* arch independent
> macros to reduce the code size and future maintaining effort.
> 
> Signed-off-by: Fan Zhang <roy.fan.zh...@intel.com>
> Signed-off-by: Lukasz Krakowiak <lukaszx.krakow...@intel.com>
> ---
> v2:
> - making the PMD compatible with both new intel-ipsec-mb version 0.52 and 
> older
> - fixed a bug
> 
>  drivers/crypto/aesni_mb/Makefile                   |   24 +-
>  drivers/crypto/aesni_mb/meson.build                |   14 +-
>  drivers/crypto/aesni_mb/rte_aesni_mb_pmd_next.c    | 1237 
> ++++++++++++++++++++
>  .../crypto/aesni_mb/rte_aesni_mb_pmd_ops_next.c    |  681 +++++++++++
>  drivers/crypto/aesni_mb/rte_aesni_mb_pmd_private.h |   52 +-
>  5 files changed, 1998 insertions(+), 10 deletions(-)
>  create mode 100755 drivers/crypto/aesni_mb/rte_aesni_mb_pmd_next.c
>  create mode 100755 drivers/crypto/aesni_mb/rte_aesni_mb_pmd_ops_next.c
> 
> diff --git a/drivers/crypto/aesni_mb/Makefile 
> b/drivers/crypto/aesni_mb/Makefile
> index 806a95eb8..24630a6ca 100644
> --- a/drivers/crypto/aesni_mb/Makefile
> +++ b/drivers/crypto/aesni_mb/Makefile
> @@ -22,8 +22,26 @@ LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring
>  LDLIBS += -lrte_cryptodev
>  LDLIBS += -lrte_bus_vdev
>  
> -# library source files
> -SRCS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_MB) += rte_aesni_mb_pmd.c
> -SRCS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_MB) += rte_aesni_mb_pmd_ops.c
> +IMB_HDR = /usr/include/intel-ipsec-mb.h
> +
> +# Detect library version
> +IMB_VERSION = $(shell grep -e "IMB_VERSION_STR" $(IMB_HDR) | cut -d'"' -f2)
> +IMB_VERSION_NUM = $(shell grep -e "IMB_VERSION_NUM" $(IMB_HDR) | cut -d' ' 
> -f3)
> +
> +ifeq ($(IMB_VERSION),)
> +     # files for older version of IMB
> +     SRCS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_MB) += rte_aesni_mb_pmd.c
> +     SRCS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_MB) += rte_aesni_mb_pmd_ops.c
> +else
> +     ifeq ($(shell expr $(IMB_VERSION_NUM) \>= 0x3400), 1)
> +             # files for a new version of IMB
> +             SRCS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_MB) += 
> rte_aesni_mb_pmd_next.c
> +             SRCS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_MB) += 
> rte_aesni_mb_pmd_ops_next.c
> +     else
> +             # files for older version of IMB
> +             SRCS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_MB) += rte_aesni_mb_pmd.c
> +             SRCS-$(CONFIG_RTE_LIBRTE_PMD_AESNI_MB) += rte_aesni_mb_pmd_ops.c
> +     endif
> +endif
>  
>  include $(RTE_SDK)/mk/rte.lib.mk
> diff --git a/drivers/crypto/aesni_mb/meson.build 
> b/drivers/crypto/aesni_mb/meson.build
> index aae0995e5..490f68eaf 100644
> --- a/drivers/crypto/aesni_mb/meson.build
> +++ b/drivers/crypto/aesni_mb/meson.build
> @@ -1,6 +1,6 @@
>  # SPDX-License-Identifier: BSD-3-Clause
>  # Copyright(c) 2018 Intel Corporation
> -
> +IPSec_MB_ver_0_52 = '0.52.0'
>  lib = cc.find_library('IPSec_MB', required: false)
>  if not lib.found()
>       build = false
> @@ -8,5 +8,15 @@ else
>       ext_deps += lib
>  endif
>  
> -sources = files('rte_aesni_mb_pmd.c', 'rte_aesni_mb_pmd_ops.c')
> +imb_version = cc.get_define('IMB_VERSION_STR',
> +        prefix : '#include<intel-ipsec-mb.h>')
> +
> +if imb_version.version_compare('>=' + IPSec_MB_ver_0_52)
> +     message('Build for a new version of library IPSec_MB[' + imb_version + 
> ']')
> +     sources = files('rte_aesni_mb_pmd_next.c', 
> 'rte_aesni_mb_pmd_ops_next.c')
> +else
> +     message('Build for older version of library IPSec_MB[' + imb_version + 
> ']')
> +     sources = files('rte_aesni_mb_pmd.c', 'rte_aesni_mb_pmd_ops.c')
> +endif
> +
>  deps += ['bus_vdev']

I don't know what you are trying to do, but I know it is not explained.
Adding files "*_next.c" looks to be a bad idea.
And worst: it does not compile with meson:
        drivers/crypto/aesni_mb/meson.build:11:0: ERROR:  Could not get define 
'IMB_VERSION_STR'

This patch is a total mess which must be explained, tested and split in several 
patches.
I drop it from the merge to master and update all related AES patches
to "Changes Requested" in patchwork.



Reply via email to