[meta-intel] [PATCHv2 1/2] meta-intel/common: Initial Intel DPDK recipe under recipes-extended
From: Chan Wei Sern wei.sern.c...@intel.com This is an initial version of Intel Data Plane Development Kits (DPDK) recipe support. This recipe is targetting on Intel DPDK v1.6.0r2. This recipe is created under meta-intel/common because Intel DPDK can be commonly used several Intel BSP platforms such as Romley, Crystal-Forest Mohon-peak. We resolved examples apps build failure found in v1.6.0-r2 by cherry-picking patches from v1.7.0 as they are not planned to be fixed in v1.6.0-r2. The example app build failure are found in qos_sched, eal_flags_autotest and cmdline_autotest. Signed-off-by: Chan Wei Sern wei.sern.c...@intel.com --- ...ix-build-switches-to-enable-cmdline-tests.patch | 49 ++ ...dpdk-1.6.0r2-eal-fix-option-base-virtaddr.patch | 31 ...k-1.6.0r2-examples-qos_sched-fix-makefile.patch | 31 common/recipes-extended/dpdk/dpdk_1.6.0r2.bb | 167 + 4 files changed, 278 insertions(+) create mode 100644 common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-app-test-fix-build-switches-to-enable-cmdline-tests.patch create mode 100644 common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-eal-fix-option-base-virtaddr.patch create mode 100644 common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-examples-qos_sched-fix-makefile.patch create mode 100644 common/recipes-extended/dpdk/dpdk_1.6.0r2.bb diff --git a/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-app-test-fix-build-switches-to-enable-cmdline-tests.patch b/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-app-test-fix-build-switches-to-enable-cmdline-tests.patch new file mode 100644 index 000..eab4776 --- /dev/null +++ b/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-app-test-fix-build-switches-to-enable-cmdline-tests.patch @@ -0,0 +1,49 @@ +From cf953d2bfa7df9aa67459b333db4d4d8a9e72fd6 Mon Sep 17 00:00:00 2001 +From: Thomas Monjalon thomas.monja...@6wind.com +Date: Fri, 27 Jun 2014 11:21:11 +0200 +Subject: [PATCH] app/test: fix build switches to enable cmdline tests + +There were 2 typos since these commits (in 1.6.0 releases): + 21a7f4e264 fix build without librte_cmdline + cac6d08c8b replace --use-device option by --pci-whitelist and --vdev +In makefiles, the build options are prefixed with CONFIG_RTE_ +but in .c file, it is only RTE_. + +These typos were disabling cmdline unit tests and test of --vdev eth_ring option. + +Signed-off-by: Thomas Monjalon thomas.monja...@6wind.com +Acked-by: Pablo de Lara pablo.de.lara.gua...@intel.com +--- + app/test/test_cmdline.c | 2 +- + app/test/test_eal_flags.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/app/test/test_cmdline.c b/app/test/test_cmdline.c +index 77475c4..10a3f77 100644 +--- a/app/test/test_cmdline.c b/app/test/test_cmdline.c +@@ -39,7 +39,7 @@ + int + test_cmdline(void) + { +-#ifdef CONFIG_RTE_LIBRTE_CMDLINE ++#ifdef RTE_LIBRTE_CMDLINE + printf(Testind parsing ethernet addresses...\n); + if (test_parse_etheraddr_valid() 0) + return -1; +diff --git a/app/test/test_eal_flags.c b/app/test/test_eal_flags.c +index a862654..1b80b80 100644 +--- a/app/test/test_eal_flags.c b/app/test/test_eal_flags.c +@@ -317,7 +317,7 @@ test_whitelist_flag(void) + const char *wlval3[] = {prgname, prefix, mp_flag, -n, 1, -c, 1, + pci_whitelist, 09:0B.3,type=test, + pci_whitelist, 08:00.1,type=normal, +-#ifdef CONFIG_RTE_LIBRTE_PMD_RING ++#ifdef RTE_LIBRTE_PMD_RING + vdev, eth_ring,arg=test, + #endif + }; +-- +1.9.1 + diff --git a/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-eal-fix-option-base-virtaddr.patch b/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-eal-fix-option-base-virtaddr.patch new file mode 100644 index 000..971d0c5 --- /dev/null +++ b/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-eal-fix-option-base-virtaddr.patch @@ -0,0 +1,31 @@ +From be1816f59e772e427fc5815281f9458a9314973a Mon Sep 17 00:00:00 2001 +From: Pablo de Lara pablo.de.lara.gua...@intel.com +Date: Thu, 19 Jun 2014 16:35:22 +0100 +Subject: [PATCH] eal: fix option --base-virtaddr + +When parsing EAL option --base-virtaddr +errno was not being set to 0 before calling strtoull, +therefore function might fail unnecesarily. + +Signed-off-by: Pablo de Lara pablo.de.lara.gua...@intel.com +Signed-off-by: Aaron Campbell aa...@arbor.net +Acked-by: Anatoly Burakov anatoly.bura...@intel.com +--- + lib/librte_eal/linuxapp/eal/eal.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/lib/librte_eal/linuxapp/eal/eal.c b/lib/librte_eal/linuxapp/eal/eal.c +index 6994303..d204387 100644 +--- a/lib/librte_eal/linuxapp/eal/eal.c b/lib/librte_eal/linuxapp/eal/eal.c +@@ -562,6 +562,7 @@ eal_parse_base_virtaddr(const char *arg) + char *end; + uint64_t addr; + ++ errno = 0; + addr = strtoull(arg, end, 16); + + /* check for errors */ +-- +1.9.1 + diff --git
[meta-intel] [PATCHv2 2/2] meta-romley: add Intel DPDK v1.6.0r2 support Romley machine config
From: Chan Wei Sern wei.sern.c...@intel.com Added MACHINE_EXTRA_RRECOMMENDS to include dpdk for romley machine configuration so that building on Romley will automatically pick up Intel DPDK. This is an initial version of Intel DPDK support in Romley that is default target version 1.6.0r2. Signed-off-by: Chan Wei Sern wei.sern.c...@intel.com --- meta-romley/conf/machine/romley-ivb.conf | 4 +++- meta-romley/conf/machine/romley.conf | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/meta-romley/conf/machine/romley-ivb.conf b/meta-romley/conf/machine/romley-ivb.conf index af52897..54d2d30 100644 --- a/meta-romley/conf/machine/romley-ivb.conf +++ b/meta-romley/conf/machine/romley-ivb.conf @@ -7,7 +7,6 @@ #@DESCRIPTION: Machine configuration for Romley systems # i.e. Xeon E5-2600 and E5-2400 + Intel CC604/C602-J - PREFERRED_VERSION_linux-yocto ?= 3.10% require conf/machine/include/intel-corei7-64-common.inc @@ -18,3 +17,6 @@ XSERVER ?= ${XSERVER_X86_BASE} \ ${XSERVER_X86_EXT} \ ${XSERVER_X86_MATROX_MGA} \ + +MACHINE_EXTRA_RRECOMMENDS += dpdk \ + diff --git a/meta-romley/conf/machine/romley.conf b/meta-romley/conf/machine/romley.conf index ed52a1e..2e17114 100644 --- a/meta-romley/conf/machine/romley.conf +++ b/meta-romley/conf/machine/romley.conf @@ -7,7 +7,6 @@ #@DESCRIPTION: Machine configuration for Romley systems # i.e. Xeon E5-2600 and E5-2400 + Intel CC604/C602-J - PREFERRED_VERSION_linux-yocto ?= 3.10% require conf/machine/include/intel-corei7-64-common.inc @@ -18,3 +17,6 @@ XSERVER ?= ${XSERVER_X86_BASE} \ ${XSERVER_X86_EXT} \ ${XSERVER_X86_MATROX_MGA} \ + +MACHINE_EXTRA_RRECOMMENDS += dpdk \ + -- 1.9.1 -- ___ meta-intel mailing list meta-intel@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-intel
Re: [meta-intel] [PATCHv2 2/2] meta-romley: add Intel DPDK v1.6.0r2 support Romley machine config
On 10 July 2014 09:40, wei.sern.c...@intel.com wrote: Added MACHINE_EXTRA_RRECOMMENDS to include dpdk for romley machine configuration so that building on Romley will automatically pick up Intel DPDK. As far as I'm aware DPDK on it's own doesn't serve any purpose - it's a development kit/library and you need to build *something* against it to get the increased network performance for that application. If this is the case then it shouldn't be installed by default in every romley image. Ross -- ___ meta-intel mailing list meta-intel@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-intel
Re: [meta-intel] [PATCHv2 1/2] meta-intel/common: Initial Intel DPDK recipe under recipes-extended
On 10 July 2014 09:40, wei.sern.c...@intel.com wrote: +++ b/common/recipes-extended/dpdk/dpdk/dpdk-1.6.0r2-app-test-fix-build-switches-to-enable-cmdline-tests.patch @@ -0,0 +1,49 @@ +From cf953d2bfa7df9aa67459b333db4d4d8a9e72fd6 Mon Sep 17 00:00:00 2001 +From: Thomas Monjalon thomas.monja...@6wind.com +Date: Fri, 27 Jun 2014 11:21:11 +0200 +Subject: [PATCH] app/test: fix build switches to enable cmdline tests + +There were 2 typos since these commits (in 1.6.0 releases): + 21a7f4e264 fix build without librte_cmdline + cac6d08c8b replace --use-device option by --pci-whitelist and --vdev +In makefiles, the build options are prefixed with CONFIG_RTE_ +but in .c file, it is only RTE_. + +These typos were disabling cmdline unit tests and test of --vdev eth_ring option. + +Signed-off-by: Thomas Monjalon thomas.monja...@6wind.com +Acked-by: Pablo de Lara pablo.de.lara.gua...@intel.com Patches need to have a Signed-Off-By (presumably, you) and Upstream-Status (in this case, Backport) at the top. This is so we know who is responsible for bringing the patch into oe-core, and that as a backport its likely to be removed in the future. +# Recipe Ingredients (source, patch, etc) Pointless comment. +export INSTALL_PATH = ${prefix}/dpdk Urgh, if it can't be told to install into $datadir $libdir etc, then that's sad. Ross -- ___ meta-intel mailing list meta-intel@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-intel
Re: [meta-intel] [PATCHv2 1/2] meta-intel/common: Initial Intel DPDK recipe under recipes-extended
On 10 July 2014 09:40, wei.sern.c...@intel.com wrote: This is an initial version of Intel Data Plane Development Kits (DPDK) recipe support. This recipe is targetting on Intel DPDK v1.6.0r2. This recipe is created under meta-intel/common because Intel DPDK can be commonly used several Intel BSP platforms such as Romley, Crystal-Forest Mohon-peak. We resolved examples apps build failure found in v1.6.0-r2 by cherry-picking patches from v1.7.0 as they are not planned to be fixed in v1.6.0-r2. The example app build failure are found in qos_sched, eal_flags_autotest and cmdline_autotest. This fails a build from clean: | /data/poky-master/tmp/work/nuc-poky-linux/dpdk/1.6.0r2-r0/temp/run.do_compile.7306: 129: [: cmdline: unexpected operator | /data/poky-master/tmp/work/nuc-poky-linux/dpdk/1.6.0r2-r0/temp/run.do_compile.7306: 129: [: dpdk_qat: unexpected operator Your logic is probably expanding to empty strings. | make[1]: Entering directory `/data/poky-master/tmp/work/nuc-poky-linux/dpdk/1.6.0r2-r0/dpdk-1.6.0r2/examples/dpdk_qat/build' | CC main.o | CC crypto.o | /data/poky-master/tmp/work/nuc-poky-linux/dpdk/1.6.0r2-r0/dpdk-1.6.0r2/examples/dpdk_qat/crypto.c:64:17: fatal error: cpa.h: No such file or directory | #include cpa.h Missing build dependency? Before submitting, it's best to always wipe your build directory (just delete tmp/, or use wipe-sysroot) to verify that you have the correct build dependencies. Ross -- ___ meta-intel mailing list meta-intel@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-intel