From mboxrd@z Thu Jan 1 00:00:00 1970 From: Panu Matilainen Subject: Re: [PATCH] mk: bump minimum march in default machine Date: Tue, 1 Dec 2015 16:32:39 +0200 Message-ID: <565DAF87.2000405@redhat.com> References: <1448980014-31548-1-git-send-email-christian.ehrhardt@canonical.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable To: Christian Ehrhardt , dev@dpdk.org Return-path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id 92BF512A8 for ; Tue, 1 Dec 2015 15:32:41 +0100 (CET) In-Reply-To: <1448980014-31548-1-git-send-email-christian.ehrhardt@canonical.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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 w= ork > anymore. > We usually configured "make config T=3Dx86_64-native-linuxapp-gcc" but = then > set CONFIG_RTE_MACHINE=3D"default" to get something like the "lowest ac= ceptable > 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 =E2=80=98grind= er_pipe_exists=E2=80=99: > /usr/lib/gcc/x86_64-linux-gnu/5/include/smmintrin.h:67:1: error: inlini= ng > failed in call to always_inline =E2=80=98_mm_testz_si128=E2=80=99: targ= et 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=3Dcore2. > > So if nehalem (the next march level which has SSE4.x) is the new minimu= m let us > set this in the default machine config. > > Signed-off-by: Christian Ehrhardt > --- > > [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.va= rs.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 =3D > # CPU_ASFLAGS =3D > > -MACHINE_CFLAGS +=3D -march=3Dcore2 > +MACHINE_CFLAGS +=3D -march=3Dnehalem > You can just disable CONFIG_RTE_SCHED_VECTOR instead. Also see=20 http://dpdk.org/ml/archives/dev/2015-November/029067.html - Panu -