From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jerin Jacob Subject: Re: [PATCH 2/6] config: add clang support for armv8a linuxapp Date: Thu, 11 May 2017 12:28:03 +0530 Message-ID: <20170511065801.GA5461@jerin> References: <20170510101643.30556-1-ashwin.sekhar@caviumnetworks.com> <20170510101643.30556-3-ashwin.sekhar@caviumnetworks.com> <20170511052457.GB3057@jerin> <1494481037.4256.6.camel@caviumnetworks.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: "Jacob, Jerin" , "bruce.richardson@intel.com" , "thomas@monjalon.net" , "konstantin.ananyev@intel.com" , "pablo.de.lara.guarch@intel.com" , "Czekaj, Maciej" , "viktorin@rehivetech.com" , "dev@dpdk.org" , "jianbo.liu@linaro.org" To: "Sekhar, Ashwin" Return-path: Received: from NAM01-BY2-obe.outbound.protection.outlook.com (mail-by2nam01on0067.outbound.protection.outlook.com [104.47.34.67]) by dpdk.org (Postfix) with ESMTP id 1551F1C00 for ; Thu, 11 May 2017 08:58:24 +0200 (CEST) Content-Disposition: inline In-Reply-To: <1494481037.4256.6.camel@caviumnetworks.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" -----Original Message----- > Date: Thu, 11 May 2017 11:07:18 +0530 > From: "Sekhar, Ashwin" > To: "Jacob, Jerin" > CC: "bruce.richardson@intel.com" , > "thomas@monjalon.net" , > "konstantin.ananyev@intel.com" , > "pablo.de.lara.guarch@intel.com" , > "Czekaj, Maciej" , "viktorin@rehivetech.com" > , "dev@dpdk.org" , > "jianbo.liu@linaro.org" > Subject: Re: [dpdk-dev] [PATCH 2/6] config: add clang support for armv8a > linuxapp > > > > > > >
On Thu, 2017-05-11 at 10:54 +0530, Jerin Jacob wrote:
> > -----Original Message-----
> > >
> > > Date: Wed, 10 May 2017 03:16:39 -0700
> > > From: Ashwin Sekhar T K <ashwin.sekhar@caviumnetworks.com>
> > > To: thomas@monjalon.net, jerin.jacob@caviumnetworks.com,
> > >  maciej.czekaj@caviumnetworks.com, viktorin@rehivetech.com,
> > >  jianbo.liu@linaro.org, bruce.richardson@intel.com,
> > >  pablo.de.lara.guarch@intel.com, konstantin.ananyev@intel.com
> > > Cc: dev@dpdk.org, Ashwin Sekhar T K <ashwin.sekhar@caviumnetworks.c
> > > om>
> > > Subject: [dpdk-dev] [PATCH 2/6] config: add clang support for
> > > armv8a
> > >  linuxapp
> > > X-Mailer: git-send-email 2.13.0.rc1
> > >
> > > Added new config arm64-armv8a-linuxapp-clang
> > >
> > > Signed-off-by: Ashwin Sekhar T K <ashwin.sekhar@caviumnetworks.com>
> > > ---
> > >  config/defconfig_arm64-armv8a-linuxapp-clang | 56
> > > ++++++++++++++++++++++++++++
> > >  1 file changed, 56 insertions(+)
> > >  create mode 100644 config/defconfig_arm64-armv8a-linuxapp-clang
> > >
> > > diff --git a/config/defconfig_arm64-armv8a-linuxapp-clang
> > > b/config/defconfig_arm64-armv8a-linuxapp-clang
> > > +#include "common_linuxapp"
> > > +
> > > +CONFIG_RTE_MACHINE="armv8a"
> > > +
> > > +CONFIG_RTE_ARCH="arm64"
> > > +CONFIG_RTE_ARCH_ARM64=y
> > > +CONFIG_RTE_ARCH_64=y
> > > +
> > > +CONFIG_RTE_FORCE_INTRINSICS=y
> > > +
> > > +CONFIG_RTE_TOOLCHAIN="clang"
> > > +CONFIG_RTE_TOOLCHAIN_CLANG=y
> > > +
> > > +# Maximum available cache line size in arm64 implementations.
> > > +# Setting to maximum available cache line size in generic config
> > > +# to address minimum DMA alignment across all arm64
> > > implementations.
> > > +CONFIG_RTE_CACHE_LINE_SIZE=128
> > > +
> > > +CONFIG_RTE_EAL_IGB_UIO=n
> > > +
> > > +CONFIG_RTE_LIBRTE_FM10K_PMD=n
> > > +CONFIG_RTE_LIBRTE_SFC_EFX_PMD=n
> > > +CONFIG_RTE_LIBRTE_AVP_PMD=n
> > > +
> > > +CONFIG_RTE_SCHED_VECTOR=n
> > IMO, It is better to create common_armv8 config and let gcc and clang
> > use that to avoid duplicating the symbols.
> >
> For x86, this is the convention that is followed. There are separate
> defconfigs for icc, gcc, clang with symbols duplicated. Do we need to
> deviate from this convention for armv8a?
x86 case it bit different as the delta between common_config and x86 is very minimal. for arm64 case, Following configs needs to be duplicated in both clang and gcc. CONFIG_RTE_CACHE_LINE_SIZE=128 CONFIG_RTE_EAL_IGB_UIO=n CONFIG_RTE_LIBRTE_FM10K_PMD=n CONFIG_RTE_LIBRTE_SFC_EFX_PMD=n CONFIG_RTE_LIBRTE_AVP_PMD=n CONFIG_RTE_SCHED_VECTOR=n That creates mutability issue. Creating a common common_armv8_linuxapp will fix that issue.