[dpdk-dev] [EXT] [PATCH v4 00/14] drivers/crypto: introduce ipsec_mb framework

Akhil Goyal gakhil at marvell.com
Wed Oct 20 10:31:00 CEST 2021


> > > Acked-by: Akhil Goyal <gakhil at marvell.com>
> > > Patches are rebased over TOT of next-crypto
> > > Release notes are updated
> > > Applied to dpdk-next-crypto
> >
> > I think compilation has not been tested.
> 
> I am not sure why this is failing at your end,
> On my machine, it is getting compiled with intel-ipsec-mb v1.0.
> I am double checking compilation for all the individual patches as well.
> Will inform you once it is completed.
> On TOT of next crypto, I did a quick test touched the pmd_zuc.c and it is
> getting compiled.
> cavium at cavium-DT13:~/up/dpdk-next-crypto$ touch
> drivers/crypto/ipsec_mb/pmd_zuc.c
> cavium at cavium-DT13:~/up/dpdk-next-crypto$ ./devtools/test-meson-
> builds.sh
> ninja: Entering directory `./build-gcc-static'
> [24/24] Linking target app/test/dpdk-test.
> ninja: Entering directory `./build-gcc-shared'
> [8/8] Linking target drivers/librte_crypto_ipsec_mb.so.22.0.
> ninja: Entering directory `./build-clang-static'
> [24/24] Linking target app/test/dpdk-test.
> ninja: Entering directory `./build-clang-shared'
> [8/8] Linking target drivers/librte_crypto_ipsec_mb.so.22.0.
> ninja: Entering directory `./build-x86-generic'
> [9/9] Linking target buildtools/chkincs/chkincs.
> ninja: Entering directory `./build-x86-mingw'
> ninja: no work to do.
> 
> > You need to update intel-ipsec-mb to v1.0.
I have tried compilation of individual patches as well. It works fine for me.
I see that the ipsec_mb is not in content skipped. So my intel-ipsec-mb version is 1.0.
Message:
=================
Content Skipped
=================
libs:
drivers:
        common/mvep:    missing dependency, "libmusdk"
        net/af_xdp:     missing dependency, "libbpf"
        net/ipn3ke:     missing dependency, "libfdt"
        net/mvneta:     missing dependency, "libmusdk"
        net/mvpp2:      missing dependency, "libmusdk"
        net/nfb:        missing dependency, "libnfb"
        net/pcap:       missing dependency, "libpcap"
        net/szedata2:   missing dependency, "libsze2"
        raw/ifpga:      missing dependency, "libfdt"
        crypto/armv8:   missing dependency, "libAArch64crypto"
        crypto/mvsam:   missing dependency, "libmusdk"

I did a rebase -i on the commit below these patches and ran test-meson-build.sh
git rebase -i 672c47fc35 --exec=./devtools/test-meson-builds.sh

The compilation is perfect for me.


> > Result:
> >
> > drivers/crypto/ipsec_mb/pmd_zuc.c:176:33: error: ‘hash_keys’ may be
> used
> > uninitialized [-Werror=maybe-uninitialized]/aesni/intel-ipsec-mb/lib/intel-
> > ipsec-mb.h:1444:11: note: in definition of macro
> ‘IMB_ZUC_EIA3_N_BUFFER’
> >  1444 |         ((_mgr)->eia3_n_buffer((_key), (_iv), (_in), (_len), (_tag),
> > (_num)))
> >       |           ^~~~
> > drivers/crypto/ipsec_mb/pmd_zuc.c:176:33: note: by argument 1 of type
> > ‘const void * const*’ to ‘void(const void * const*, const void * const*, const
> > void * const*, const uint32_t *, uint32_t **, const uint32_t)’ {aka
> ‘void(const
> > void * const*, const void * const*, const void * const*, const unsigned int *,
> > unsigned int **, const unsigned int)’}
> > /aesni/intel-ipsec-mb/lib/intel-ipsec-mb.h:1444:11: note: in definition of
> > macro ‘IMB_ZUC_EIA3_N_BUFFER’
> >  1444 |         ((_mgr)->eia3_n_buffer((_key), (_iv), (_in), (_len), (_tag),
> > (_num)))
> >       |           ^~~~
> > drivers/crypto/ipsec_mb/pmd_zuc.c:145:21: note: ‘hash_keys’ declared
> here
> >   145 |         const void *hash_keys[ZUC_MAX_BURST];
> >       |                     ^~~~~~~~~
> > In file included from
> > ../../dpdk/drivers/crypto/ipsec_mb/ipsec_mb_private.h:8,
> >                  from ../../dpdk/drivers/crypto/ipsec_mb/pmd_zuc_priv.h:8,
> >                  from ../../dpdk/drivers/crypto/ipsec_mb/pmd_zuc.c:5:
> > drivers/crypto/ipsec_mb/pmd_zuc.c:176:33: error: ‘iv’ may be used
> > uninitialized [-Werror=maybe-uninitialized]
> >   176 |         IMB_ZUC_EIA3_N_BUFFER(qp->mb_mgr, (const void
> > **)hash_keys,
> > /aesni/intel-ipsec-mb/lib/intel-ipsec-mb.h:1444:11: note: in definition of
> > macro ‘IMB_ZUC_EIA3_N_BUFFER’
> >  1444 |         ((_mgr)->eia3_n_buffer((_key), (_iv), (_in), (_len), (_tag),
> > (_num)))
> >       |           ^~~~
> > drivers/crypto/ipsec_mb/pmd_zuc.c:176:33: note: by argument 2 of type
> > ‘const void * const*’ to ‘void(const void * const*, const void * const*, const
> > void * const*, const uint32_t *, uint32_t **, const uint32_t)’ {aka
> ‘void(const
> > void * const*, const void * const*, const void * const*, const unsigned int *,
> > unsigned int **, const unsigned int)’}
> > /aesni/intel-ipsec-mb/lib/intel-ipsec-mb.h:1444:11: note: in definition of
> > macro ‘IMB_ZUC_EIA3_N_BUFFER’
> >  1444 |         ((_mgr)->eia3_n_buffer((_key), (_iv), (_in), (_len), (_tag),
> > (_num)))
> >       |           ^~~~
> > drivers/crypto/ipsec_mb/pmd_zuc.c:144:18: note: ‘iv’ declared here
> >   144 |         uint8_t *iv[ZUC_MAX_BURST];
> >       |                  ^~
> > In file included from
> > ../../dpdk/drivers/crypto/ipsec_mb/ipsec_mb_private.h:8,
> >                  from ../../dpdk/drivers/crypto/ipsec_mb/pmd_zuc_priv.h:8,
> >                  from ../../dpdk/drivers/crypto/ipsec_mb/pmd_zuc.c:5:
> > drivers/crypto/ipsec_mb/pmd_zuc.c:176:33: error: ‘src’ may be used
> > uninitialized [-Werror=maybe-uninitialized]
> >   176 |         IMB_ZUC_EIA3_N_BUFFER(qp->mb_mgr, (const void
> > **)hash_keys,
> > /aesni/intel-ipsec-mb/lib/intel-ipsec-mb.h:1444:11: note: in definition of
> > macro ‘IMB_ZUC_EIA3_N_BUFFER’
> >  1444 |         ((_mgr)->eia3_n_buffer((_key), (_iv), (_in), (_len), (_tag),
> > (_num)))
> >       |           ^~~~
> > ../../dpdk/d(const void * const*, const void * const*, const void * const*,
> > const uint32_t *, uint32_t **, const uint32_t)’ {aka ‘void(const void *
> const*,
> > const void * const*, const void * const*, const unsigned int *, unsigned int
> > **, const unsigned int)’}
> >   176 |         IMB_ZUC_EIA3_N_BUFFER(qp->mb_mgr, (const void
> > **)hash_keys,
> > /aesni/intel-ipsec-mb/lib/intel-ipsec-mb.h:1444:11: note: in definition of
> > macro ‘IMB_ZUC_EIA3_N_BUFFER’
> >  1444 |         ((_mgr)->eia3_n_buffer((_key), (_iv), (_in), (_len), (_tag),
> > (_num)))
> >       |           ^~~~
> > drivers/crypto/ipsec_mb/pmd_zuc.c:141:18: note: ‘src’ declared here
> >   141 |         uint8_t *src[ZUC_MAX_BURST];
> >       |                  ^~~
> > In file included from
> > ../../dpdk/drivers/crypto/ipsec_mb/ipsec_mb_private.h:8,
> >                  from ../../dpdk/drivers/crypto/ipsec_mb/pmd_zuc_priv.h:8,
> >                  from ../../dpdk/drivers/crypto/ipsec_mb/pmd_zuc.c:5:
> > drivers/crypto/ipsec_mb/pmd_zuc.c:176:33: error: ‘length_in_bits’ may be
> > used uninitialized [-Werror=maybe-uninitialized]
> >   176 |         IMB_ZUC_EIA3_N_BUFFER(qp->mb_mgr, (const void
> > **)hash_keys,
> > /aesni/intel-ipsec-mb/lib/intel-ipsec-mb.h:1444:11: note: in definition of
> > macro ‘IMB_ZUC_EIA3_N_BUFFER’
> >  1444 |         ((_mgr)->eia3_n_buffer((_key), (_iv), (_in), (_len), (_tag),
> > (_num)))
> >       |           ^~~~
> > drivers/crypto/ipsec_mb/pmd_zuc.c:176:33: note: by argument 4 of type
> > ‘const uint32_t *’ {aka ‘const unsigned int *’} to ‘void(const void * const*,
> > const void * const*, const void * const*, const uint32_t *, uint32_t **,
> const
> > uint32_t)’ {aka ‘void(const void * const*, const void * const*, const void *
> > const*, const unsigned int *, unsigned int **, const unsigned int)’}
> >   176 |         IMB_ZUC_EIA3_N_BUFFER(qp->mb_mgr, (const void
> > **)hash_keys,
> > /aesni/intel-ipsec-mb/lib/intel-ipsec-mb.h:1444:11: note: in definition of
> > macro ‘IMB_ZUC_EIA3_N_BUFFER’
> >  1444 |         ((_mgr)->eia3_n_buffer((_key), (_iv), (_in), (_len), (_tag),
> > (_num)))
> >       |           ^~~~
> > drivers/crypto/ipsec_mb/pmd_zuc.c:143:18: note: ‘length_in_bits’ declared
> > here
> >   143 |         uint32_t length_in_bits[ZUC_MAX_BURST];
> >       |                  ^~~~~~~~~~~~~~
> > cc1: all warnings being treated as errors
> >
> > I think I will just drop all these patches from 21.11-rc1.
> >
> > Not sure I will accept any new revision, given how I am annoyed recently
> > by such bad work in Intel.
> >



More information about the dev mailing list