Re: [meta-intel] [meta-dpdk][PATCH v2] dpdk.inc: fix missing numa.h by disabling NUMA options by default
>> Use PACKAGECONFIG to optionally enable the numa option. Looks good to go now. BR, Awais From: California Sullivan <california.l.sulli...@intel.com> Sent: Wednesday, April 4, 2018 2:18 AM To: meta-intel@yoctoproject.org Cc: Belal, Awais; California Sullivan Subject: [meta-dpdk][PATCH v2] dpdk.inc: fix missing numa.h by disabling NUMA options by default Otherwise we get this: | dpdk-18.02/lib/librte_eal/linuxapp/eal/eal_memory.c:27:10: fatal error: numa.h: No such file or directory | #include | ^~~~ | compilation terminated. Use PACKAGECONFIG to optionally enable the numa option. Signed-off-by: California Sullivan <california.l.sulli...@intel.com> --- v2: * use correct dependency for numa * CONFIG_VHOST_NUMA_ENABLED -> CONFIG_HAVE_NUMA * PACKAGECONFIG[libnuma] -> PACKAGECONFIG[numa] recipes-extended/dpdk/dpdk.inc | 4 1 file changed, 4 insertions(+) diff --git a/recipes-extended/dpdk/dpdk.inc b/recipes-extended/dpdk/dpdk.inc index ce4e8bc..0818841 100644 --- a/recipes-extended/dpdk/dpdk.inc +++ b/recipes-extended/dpdk/dpdk.inc @@ -29,10 +29,12 @@ COMPATIBLE_HOST_libc-musl_class-target = "null" PACKAGECONFIG[dpdk_qat] = ",,virtual/qat" PACKAGECONFIG[vhost] = ",,fuse" PACKAGECONFIG[libvirt] = ",,libvirt" +PACKAGECONFIG[numa] = ",,numactl" export CONFIG_EXAMPLE_DPDK_QAT = "${@bb.utils.contains('PACKAGECONFIG', 'dpdk_qat', 'y', 'n', d)}" export CONFIG_EXAMPLE_VM_POWER_MANAGER = "${@bb.utils.contains('PACKAGECONFIG', 'libvirt', 'y', 'n', d)}" export CONFIG_VHOST_ENABLED = "${@bb.utils.contains('PACKAGECONFIG', 'vhost', 'y', 'n', d)}" +export CONFIG_HAVE_NUMA = "${@bb.utils.contains('PACKAGECONFIG', 'numa', 'y', 'n', d)}" RDEPENDS_${PN} += "python-subprocess virtual/libibverbs" DEPENDS = "virtual/kernel virtual/libibverbs" @@ -80,6 +82,8 @@ do_configure () { sed -e "s#CONFIG_RTE_KNI_VHOST=n#CONFIG_RTE_KNI_VHOST=${CONFIG_VHOST_ENABLED}#" -i ${S}/config/common_linuxapp sed -e "s#CONFIG_RTE_KNI_VHOST_VNET_HDR_EN=n#CONFIG_RTE_KNI_VHOST_VNET_HDR_EN=${CONFIG_VHOST_ENABLED}#" -i ${S}/config/common_linuxapp sed -e "s#CONFIG_RTE_LIBRTE_VHOST=n#CONFIG_RTE_LIBRTE_VHOST=${CONFIG_VHOST_ENABLED}#" -i ${S}/config/common_linuxapp + sed -e "s#CONFIG_RTE_LIBRTE_VHOST_NUMA=.*#CONFIG_RTE_LIBRTE_VHOST_NUMA=${CONFIG_HAVE_NUMA}#" -i ${S}/config/common_linuxapp + sed -e "s#CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=.*#CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=${CONFIG_HAVE_NUMA}#" -i ${S}/config/common_linuxapp make O=$RTE_TARGET T=$RTE_TARGET config } -- 2.14.3 -- ___ meta-intel mailing list meta-intel@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-intel
Re: [meta-intel] [meta-dpdk][PATCH 2/2] dpdk: merge recipe and include
Hi Cal, >> Could one of you review my patch and maybe take a look at the configure >> block as a whole? I've provided comments against your patch. Regarding the review of do_configure I believe we can go through it once the current patches are merged. BR, Awais From: Cal Sullivan <california.l.sulli...@intel.com> Sent: Saturday, March 31, 2018 2:26 AM To: Belal, Awais; Kevin Hao Cc: meta-intel@yoctoproject.org Subject: Re: [meta-intel] [meta-dpdk][PATCH 2/2] dpdk: merge recipe and include Hi Awais, Kevin, In testing I ran into some compilation problems: https://pastebin.com/n8dhUmZT I was able to fix it by disabling some options, but I don't know the ramifications of these changes. In working on this I noticed most of the sed commands in that do_configure block could use a review, as some are trying to modify options that no longer exist there, and others assume =n in the string to replace. Could one of you review my patch and maybe take a look at the configure block as a whole? Thanks, Cal On 03/29/2018 11:36 PM, Belal, Awais wrote: > Do we know when this will be merged? > > BR, > Awais -- ___ meta-intel mailing list meta-intel@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-intel
Re: [meta-intel] [meta-dpdk][PATCH] dpdk.inc: fix missing numa.h by disabling NUMA options by default
>> +PACKAGECONFIG[libnuma] = ",,libnuma" This dependency should be on 'numactl' which is provided under meta-oe and the PACKAGECONFIG should use just numa rather than libnuma IMO. BR, Awais From: California Sullivan <california.l.sulli...@intel.com> Sent: Saturday, March 31, 2018 2:29 AM To: meta-intel@yoctoproject.org Cc: kexin....@windriver.com; Belal, Awais; California Sullivan Subject: [meta-dpdk][PATCH] dpdk.inc: fix missing numa.h by disabling NUMA options by default Otherwise we get this: | dpdk-18.02/lib/librte_eal/linuxapp/eal/eal_memory.c:27:10: fatal error: numa.h: No such file or directory | #include | ^~~~ | compilation terminated. Signed-off-by: California Sullivan <california.l.sulli...@intel.com> --- Based on top of Awais's patch "dpdk: upgrade to 18.02" recipes-extended/dpdk/dpdk.inc | 4 1 file changed, 4 insertions(+) diff --git a/recipes-extended/dpdk/dpdk.inc b/recipes-extended/dpdk/dpdk.inc index ce4e8bc..9affda4 100644 --- a/recipes-extended/dpdk/dpdk.inc +++ b/recipes-extended/dpdk/dpdk.inc @@ -29,10 +29,12 @@ COMPATIBLE_HOST_libc-musl_class-target = "null" PACKAGECONFIG[dpdk_qat] = ",,virtual/qat" PACKAGECONFIG[vhost] = ",,fuse" PACKAGECONFIG[libvirt] = ",,libvirt" +PACKAGECONFIG[libnuma] = ",,libnuma" export CONFIG_EXAMPLE_DPDK_QAT = "${@bb.utils.contains('PACKAGECONFIG', 'dpdk_qat', 'y', 'n', d)}" export CONFIG_EXAMPLE_VM_POWER_MANAGER = "${@bb.utils.contains('PACKAGECONFIG', 'libvirt', 'y', 'n', d)}" export CONFIG_VHOST_ENABLED = "${@bb.utils.contains('PACKAGECONFIG', 'vhost', 'y', 'n', d)}" +export CONFIG_VHOST_NUMA_ENABLED = "${@bb.utils.contains('PACKAGECONFIG', 'libnuma', 'y', 'n', d)}" RDEPENDS_${PN} += "python-subprocess virtual/libibverbs" DEPENDS = "virtual/kernel virtual/libibverbs" @@ -80,6 +82,8 @@ do_configure () { sed -e "s#CONFIG_RTE_KNI_VHOST=n#CONFIG_RTE_KNI_VHOST=${CONFIG_VHOST_ENABLED}#" -i ${S}/config/common_linuxapp sed -e "s#CONFIG_RTE_KNI_VHOST_VNET_HDR_EN=n#CONFIG_RTE_KNI_VHOST_VNET_HDR_EN=${CONFIG_VHOST_ENABLED}#" -i ${S}/config/common_linuxapp sed -e "s#CONFIG_RTE_LIBRTE_VHOST=n#CONFIG_RTE_LIBRTE_VHOST=${CONFIG_VHOST_ENABLED}#" -i ${S}/config/common_linuxapp + sed -e "s#CONFIG_RTE_LIBRTE_VHOST_NUMA=.*#CONFIG_RTE_LIBRTE_VHOST_NUMA=${CONFIG_VHOST_NUMA_ENABLED}#" -i ${S}/config/common_linuxapp + sed -e "s#CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=.*#CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=${CONFIG_VHOST_NUMA_ENABLED}#" -i ${S}/config/common_linuxapp make O=$RTE_TARGET T=$RTE_TARGET config } -- 2.14.3 -- ___ meta-intel mailing list meta-intel@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-intel
Re: [meta-intel] [meta-dpdk][PATCH 2/2] dpdk: merge recipe and include
>> Is patch 1/2 good to merge? > Yes. Do we know when this will be merged? BR, Awais From: Kevin Hao <kexin@windriver.com> Sent: Thursday, March 29, 2018 6:25 AM To: Cal Sullivan Cc: Belal, Awais; meta-intel@yoctoproject.org Subject: Re: [meta-intel] [meta-dpdk][PATCH 2/2] dpdk: merge recipe and include On Wed, Mar 28, 2018 at 11:34:42AM -0700, Cal Sullivan wrote: > Is patch 1/2 good to merge? Yes. > > It looks like in order for 18.02 and 17.11 to use the same .inc file we will > need to move the LIC_FILES_CHKSUM out of it, but that can be done later. 17.11 > seems to have upstreamed the same patch that was dropped in this upgrade, so > we're good on that front as well. Agreed. Thanks, Kevin > > Thanks, > Cal > > On 03/28/2018 12:46 AM, Kevin Hao wrote: > > On Wed, Mar 28, 2018 at 12:27:48PM +0500, Awais Belal wrote: > > Since we only have a single version supported at the > moment, which is the latest and the greatest. It is > best that the include and base recipe files are merged > to allow better maintainability and readability. > > Please don't do this because I plan to add the 17.11 (LTS) version to the > Yocto. > > Thanks, > Kevin > > > Signed-off-by: Awais Belal <awais_be...@mentor.com> > --- > recipes-extended/dpdk/dpdk.inc | 167 > -- > recipes-extended/dpdk/dpdk_18.02.bb | 175 > ++-- > 2 files changed, 167 insertions(+), 175 deletions(-) > delete mode 100644 recipes-extended/dpdk/dpdk.inc > > diff --git a/recipes-extended/dpdk/dpdk.inc > b/recipes-extended/dpdk/dpdk.inc > deleted file mode 100644 > index ce4e8bc..000 > --- a/recipes-extended/dpdk/dpdk.inc > +++ /dev/null > @@ -1,167 +0,0 @@ > -DESCRIPTION = "Intel(r) Data Plane Development Kit" > -HOMEPAGE = "http://dpdk.org; > -LICENSE = "BSD & LGPLv2 & GPLv2" > -LIC_FILES_CHKSUM = > "file://license/gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ > - > file://license/lgpl-2.1.txt;md5=4b54a1fd55a448865a0b32d41598759d \ > - > file://license/bsd-3-clause.txt;md5=0f00d99239d922ffd13cabef83b33444" > - > -SRC_URI = "http://fast.dpdk.org/rel/${BP}.tar.gz;name=dpdk \ > - > file://dpdk-16.04-add-RTE_KERNELDIR_OUT-to-split-kernel-bu.patch \ > - > file://dpdk-16.07-add-sysroot-option-within-app-makefile.patch \ > - > file://dpdk-16.04-Fix-for-misleading-indentation-error.patch \ > - file://dpdk-16.07-dpdk-fix-for-parellel-make-issue.patch \ > - > file://dpdk-17.02-dpdk-fix-installation-warning-and-issue.patch \ > - " > - > -# A machine needs to enable this using: > -# COMPATIBLE_MACHINE_pn-dpdk-dev-libibverbs = "" > - > -COMPATIBLE_MACHINE = "null" > -COMPATIBLE_HOST_libc-musl_class-target = "null" > - > - > -# dpdk example apps dpdk_qat and vhost have dependancy on fuse and > qat. > -# fuse is in meta-filesystems and qat is not yet upstreamed. > -# So adding mechanism to explicitly disable the use of fuse and qat. > -# To enable, uncomment the below line or include in .bbappend. > -# PACKAGECONFIG ?= " dpdk_qat vhost libvirt" > - > -PACKAGECONFIG[dpdk_qat] = ",,virtual/qat" > -PACKAGECONFIG[vhost] = ",,fuse" > -PACKAGECONFIG[libvirt] = ",,libvirt" > - > -export CONFIG_EXAMPLE_DPDK_QAT = > "${@bb.utils.contains('PACKAGECONFIG', 'dpdk_qat', 'y', 'n', d)}" > -export CONFIG_EXAMPLE_VM_POWER_MANAGER = > "${@bb.utils.contains('PACKAGECONFIG', 'libvirt', 'y', 'n', d)}" > -export CONFIG_VHOST_ENABLED = "${@bb.utils.contains('PACKAGECONFIG', > 'vhost', 'y', 'n', d)}" > - > -RDEPENDS_${PN} += "python-subprocess virtual/libibverbs" > -DEPENDS = "virtual/kernel virtual/libibverbs" > -do_configure[depends] += "virtual/kernel:do_shared_workdir" > - > -inherit module > - > -export MODULE_DIR="/lib/modules/${KERNEL_VERSION}/kernel/drivers/net" > -export RTE_SDK = "${S}" > -export RTE_TARGET="${@bb.utils.contains("T
Re: [meta-intel] outdated dpdk-dev-libibverbs
Hi Cal, Thanks a lot for the reply. >> If you (or any other users of meta-intel-dpdk on the list) could test using >> upstream libibverbs it would be much appreciated. I could then fix it >> to >> use upstream libibverbs or take a patch for it. I'll have a look in near future hopefully. Right now I am trying to send a patch to meta-intel@yoctoproject.org using git send-email but it is failing with "550 5.7.1 Unable to relay", any pointers? BR, Awais From: Cal Sullivan <california.l.sulli...@intel.com> Sent: Saturday, March 10, 2018 4:17 AM To: Belal, Awais; meta-intel@yoctoproject.org Subject: Re: [meta-intel] outdated dpdk-dev-libibverbs Hi Awais, I don't know the history of why that version of libibverbs was used instead. Considering it no longer exists, I agree that it should be changed. Unfortunately I don't have any experience and likely lack the hardware for using dpdk, so I can only go as far as making sure it builds OK. If you (or any other users of meta-intel-dpdk on the list) could test using upstream libibverbs it would be much appreciated. I could then fix it to use upstream libibverbs or take a patch for it. Thanks, Cal On 03/09/2018 03:02 AM, Belal, Awais wrote: Hi, I was going through the meta-dpdk layer () and the actual dpdk package depends on dpdk-dev-libibverbs. Now, looking at the recipe for dpdk-dev-libibverbs it uses and outdated SRC_URI for fetching the sources (the actual tarball pointed to: does not exist) and the yocto mirror is used to fetch the tarball instead. Are there any plans of fixing/updating this? Why isn't this using a generic libibverbs source? BR, Awais -- ___ meta-intel mailing list meta-intel@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-intel
[meta-intel] outdated dpdk-dev-libibverbs
Hi, I was going through the meta-dpdk layer () and the actual dpdk package depends on dpdk-dev-libibverbs. Now, looking at the recipe for dpdk-dev-libibverbs it uses and outdated SRC_URI for fetching the sources (the actual tarball pointed to: does not exist) and the yocto mirror is used to fetch the tarball instead. Are there any plans of fixing/updating this? Why isn't this using a generic libibverbs source? BR, Awais -- ___ meta-intel mailing list meta-intel@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-intel