On 12/01/2015 04:26 PM, Christian Ehrhardt wrote: > While playing with building 2.2-rc2 I found that our usual way didn't work > anymore. > We usually configured "make config T=x86_64-native-linuxapp-gcc" but then > set CONFIG_RTE_MACHINE="default" to get something like the "lowest acceptable > build" but with that wide CPU copatibility. > > I found that with DPDK 2.2 this fails with issues like: > In file included from > /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:37:0, > from dpdk-2.2.0-rc2/lib/librte_sched/rte_sched.c:56: > dpdk-2.2.0-rc2/lib/librte_sched/rte_sched.c: In function > ?grinder_pipe_exists?: > /usr/lib/gcc/x86_64-linux-gnu/5/include/smmintrin.h:67:1: error: inlining > failed in call to always_inline ?_mm_testz_si128?: target specific option > mismatch > _mm_testz_si128 (__m128i __M, __m128i __V) > ^ > This is a hard need on newer SSE4.x features which are not given with > march=core2. > > So if nehalem (the next march level which has SSE4.x) is the new minimum let > us > set this in the default machine config. > > Signed-off-by: Christian Ehrhardt <christian.ehrhardt at canonical.com> > --- > > [diffstat] > rte.vars.mk | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > [diff] > diff --git a/mk/machine/default/rte.vars.mk b/mk/machine/default/rte.vars.mk > index 53c6af6..170d880 100644 > --- a/mk/machine/default/rte.vars.mk > +++ b/mk/machine/default/rte.vars.mk > @@ -55,4 +55,4 @@ > # CPU_LDFLAGS = > # CPU_ASFLAGS = > > -MACHINE_CFLAGS += -march=core2 > +MACHINE_CFLAGS += -march=nehalem >
You can just disable CONFIG_RTE_SCHED_VECTOR instead. Also see http://dpdk.org/ml/archives/dev/2015-November/029067.html - Panu -