[dpdk-dev] dpdk-next-net build is broken because of avx512

Andrew Rybchenko andrew.rybchenko at oktetlabs.ru
Mon Oct 26 17:40:35 CET 2020


Hi,

Is it a known issue that dpdk-next-net build is broken on Ubuntu 18.04?

gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0

FAILED: drivers/net/ice/libice_avx512_lib.a.p/ice_rxtx_vec_avx512.c.o
*c*c -Idrivers/net/ice/libice_avx512_lib.a.p -Idrivers/net/ice -I../drivers/net/ice -Idrivers/net/ice/base -I../drivers/net/ice/base -Idrivers/common/iavf -I../drivers/common/iavf -Ilib/librte_ethdev -I../lib/librte_ethdev -I. -I.. -Iconfig -I../config -Ilib/librte_eal/include -I../lib/librte_eal/include -Ilib/librte_eal/linux/include -I../lib/librte_eal/linux/include -Ilib/librte_eal/x86/include -I../lib/librte_eal/x86/include -Ilib/librte_eal/common -I../lib/librte_eal/common -Ilib/librte_eal -I../lib/librte_eal -Ilib/librte_kvargs -I../lib/librte_kvargs -Ilib/librte_metrics -I../lib/librte_metrics -Ilib/librte_telemetry -I../lib/librte_telemetry -Ilib/librte_net -I../lib/librte_net -Ilib/librte_mbuf -I../lib/librte_mbuf -Ilib/librte_mempool -I../lib/librte_mempool -Ilib/librte_ring -I../lib/librte_ring -Ilib/librte_meter -I../lib/librte_meter -Ilib/librte_hash -I../lib/librte_hash -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O3 -include rte_config.h -Wextra -Wcast-qual -Wdeprecated -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -fPIC -march=native -DALLOW_EXPERIMENTAL_API -DALLOW_INTERNAL_API -Wno-format-truncation -DCC_AVX512_SUPPORT -march=skylake-avx512 -mavx512f -MD -MQ drivers/net/ice/libice_avx512_lib.a.p/ice_rxtx_vec_avx512.c.o -MF drivers/net/ice/libice_avx512_lib.a.p/ice_rxtx_vec_avx512.c.o.d -o drivers/net/ice/libice_avx512_lib.a.p/ice_rxtx_vec_avx512.c.o -c ../drivers/net/ice/ice_rxtx_vec_avx512.c
In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:55:0,
from /usr/lib/gcc/x86_64-linux-gnu/7/include/x86intrin.h:48,
*f*rom ../lib/librte_eal/x86/include/rte_vect.h:31,
*f*rom ../lib/librte_eal/x86/include/rte_memcpy.h:17,
from ../lib/librte_net/rte_ether.h:21,
from ../lib/librte_ethdev/rte_ethdev.h:159,
from ../lib/librte_ethdev/rte_ethdev_driver.h:18,
from ../drivers/net/ice/ice_ethdev.h:10,
from ../drivers/net/ice/ice_rxtx.h:8,
from ../drivers/net/ice/ice_rxtx_vec_common.h:8,
from ../drivers/net/ice/ice_rxtx_vec_avx512.c:5:
../drivers/net/ice/ice_rxtx_vec_avx512.c: In function ‘ice_rxq_rearm’:
/usr/lib/gcc/x86_64-linux-gnu/7/include/avx512bwintrin.h:3089:1: error: inlining failed in call to always_inline ‘_mm512_bsrli_epi128’: target specific option mismatch
_mm512_bsrli_epi128 (__m512i __A, const int __N)
^~~~~~~~~~~~~~~~~~~
*.*/drivers/net/ice/ice_rxtx_vec_avx512.c:97:17: note: called from here
const __m512i desc6_7 = _mm512_bsrli_epi128(desc4_5, 8);
^~~~~~~

clang version 6.0.0-1ubuntu2 build is OK on the same host/OS.

Andrew.



More information about the dev mailing list