ci: switch to Ubuntu 20.04Ubuntu 18.04 is now rather old.Besides, other entities in our CI are also testing this distribution.Switch to a newer Ubuntu release and benefit from more recenttool(c
ci: switch to Ubuntu 20.04Ubuntu 18.04 is now rather old.Besides, other entities in our CI are also testing this distribution.Switch to a newer Ubuntu release and benefit from more recenttool(chain)s: for example, net/cnxk now builds fine and can bere-enabled.Note: Ubuntu 18.04 and 20.04 seem to preserve the same paths for the ARMand PPC cross compilation toolchains, so we can use a singleconfiguration file (with the hope, future releases of Ubuntu will do thesame).Signed-off-by: David Marchand <[email protected]>Acked-by: Aaron Conole <[email protected]>Reviewed-by: Ruifeng Wang <[email protected]>
show more ...
ci: add ppc64le cross compilation in GHAEnable Github Actions to cross-compile code for POWER systems.Signed-off-by: David Christensen <[email protected]>Reviewed-by: David Marchand <david.
ci: add ppc64le cross compilation in GHAEnable Github Actions to cross-compile code for POWER systems.Signed-off-by: David Christensen <[email protected]>Reviewed-by: David Marchand <[email protected]>
config/ppc: fix native build with GCC 4.8.5 on RHEL 7The POWER meson.build file incorrectly checks if the detected CPU is"greater than" POWER8 when it should actually test for "greater than orequ
config/ppc: fix native build with GCC 4.8.5 on RHEL 7The POWER meson.build file incorrectly checks if the detected CPU is"greater than" POWER8 when it should actually test for "greater than orequal to" POWER8. Fixed the comparison operator.Bugzilla ID: 875Fixes: 750196880843 ("config/ppc: select instruction set for IBM Power10")Signed-off-by: David Christensen <[email protected]>
config/ppc: select instruction set for IBM Power10For native build, enabling building the highest cpu_instruction_setsupported by the build host, including the new POWER10.For cross compile, ver
config/ppc: select instruction set for IBM Power10For native build, enabling building the highest cpu_instruction_setsupported by the build host, including the new POWER10.For cross compile, verifying that the compiler supports thecpu_instruction_set specified in the cross-fileSigned-off-by: Thinh Tran <[email protected]>Reviewed-by: David Christensen <[email protected]>
config/ppc: fix build with GCC >= 10Like for python, multiline statements in meson must either use abackslash character (explicit continuation) or be enclosed in ()(implicit continuation).pytho
config/ppc: fix build with GCC >= 10Like for python, multiline statements in meson must either use abackslash character (explicit continuation) or be enclosed in ()(implicit continuation).python PEP8 recommends the latter [1], and it looks like meson hadan issue with backslash before 0.50 [2].1: https://www.python.org/dev/peps/pep-0008/#multiline-if-statements2: https://github.com/mesonbuild/meson/commit/90c9b868b20bFixes: 394407f50c90 ("config/ppc: ignore GCC 11 psabi warnings")Reported-by: Ferruh Yigit <[email protected]>Signed-off-by: David Marchand <[email protected]>Tested-by: Ferruh Yigit <[email protected]>Acked-by: Bruce Richardson <[email protected]>
config/ppc: ignore GCC 11 psabi warningsSuppress the gcc warning "note: the layout of aggregates containingvectors with 4-byte alignment has changed in GCC 5" on POWER systemsby setting "-Wno-psa
config/ppc: ignore GCC 11 psabi warningsSuppress the gcc warning "note: the layout of aggregates containingvectors with 4-byte alignment has changed in GCC 5" on POWER systemsby setting "-Wno-psabi". Warning was originally added to gcc incommit https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=9832651 to warnof the vector alignment changes introduced in GCC 5. Older gccversions forced vector alignment to 16 bytes due to requirements forPOWER 6 and earlier CPUs, but these restrictions don't apply to CPUssupported by DPDK.Bugzilla ID: 739Cc: [email protected]Signed-off-by: David Christensen <[email protected]>
build: use platform for generic and native buildsThe current meson option 'machine' should only specify the ISA, which isnot sufficient for Arm, where setting ISA implies other settings as well(a
build: use platform for generic and native buildsThe current meson option 'machine' should only specify the ISA, which isnot sufficient for Arm, where setting ISA implies other settings as well(and is used in Arm configuration as such).Use the existing 'platform' meson option to differentiate the type ofthe build (native/generic) and set ISA accordingly, unless the userchooses to override it with a new option, 'cpu_instruction_set'.The 'machine' option set the ISA in x86 builds and set native/default'build type' in aarch64 builds. These two new variables, 'platform' and'cpu_instruction_set', now properly set both ISA and build type for allarchitectures in a uniform manner.The 'machine' option also doesn't describe very well what it sets. Thenew option, 'cpu_instruction_set', is much more descriptive. Keep'machine' for backwards compatibility.Signed-off-by: Juraj Linkeš <[email protected]>Acked-by: Bruce Richardson <[email protected]>
config/ppc: reduce number of cores and NUMA nodesWhen setting RTE_MAX_LCORES to the maximum value supported by ppchardware (1536), the lcores_autotest may timeout after 30 secondsbecause the test
config/ppc: reduce number of cores and NUMA nodesWhen setting RTE_MAX_LCORES to the maximum value supported by ppchardware (1536), the lcores_autotest may timeout after 30 secondsbecause the test takes nearly 60 seconds to complete. Set max_lcores toa lower value because the maximum value is unlikely to be seen in anyproduction systems and to eliminate the quick test timeout error.Bugzilla ID: 684Fixes: db1f2f8a9fe5 ("config: increase maximum lcores for ppc")Cc: [email protected]Signed-off-by: David Christensen <[email protected]>Acked-by: Luca Boccassi <[email protected]>
build: change indentation in infrastructure filesSwitch from using tabs to 4 spaces for meson.build indentation, for thebasic infrastructure and tooling files, as well as doc and kerneldirectorie
build: change indentation in infrastructure filesSwitch from using tabs to 4 spaces for meson.build indentation, for thebasic infrastructure and tooling files, as well as doc and kerneldirectories.Signed-off-by: Bruce Richardson <[email protected]>
build: remove deprecated cpuflag macrosReplace use of RTE_MACHINE_CPUFLAG macros with regular compilermacros, which are more complete than those provided by DPDK, and as suchit allows new instruc
build: remove deprecated cpuflag macrosReplace use of RTE_MACHINE_CPUFLAG macros with regular compilermacros, which are more complete than those provided by DPDK, and as suchit allows new instruction sets to be leveraged without having to doextra work to set them up in DPDK.Signed-off-by: Sean Morrissey <[email protected]>Signed-off-by: Radu Nicolau <[email protected]>Acked-by: David Marchand <[email protected]>
devtools: add ppc64 in meson build testAdd cross-compilation support of a PPC target in the build test matrix.The CPU is defined as Power8, running as little endian.Signed-off-by: Thomas Monjalo
devtools: add ppc64 in meson build testAdd cross-compilation support of a PPC target in the build test matrix.The CPU is defined as Power8, running as little endian.Signed-off-by: Thomas Monjalon <[email protected]>Reviewed-by: David Christensen <[email protected]>
build: rename ppc sub-directoriesThe directories ppc_64 are renamed as ppc in - config/ - lib/librte_eal/common/arch/ - lib/librte_eal/common/include/arch/The EAL directories are not really re
build: rename ppc sub-directoriesThe directories ppc_64 are renamed as ppc in - config/ - lib/librte_eal/common/arch/ - lib/librte_eal/common/include/arch/The EAL directories are not really renamed, but symbolically linked,because they will be moved with their new name in the next commits.If ppc_32 needs to be supported, it can be in the same directory.The arch directories arm and x86 are already covering both 32 and 64-bitsub-architectures.Signed-off-by: Thomas Monjalon <[email protected]>Reviewed-by: David Christensen <[email protected]>Acked-by: David Marchand <[email protected]>