[v3] config: enable more than 128 cores for Arm64 platform

Message ID 1542870074-142423-1-git-send-email-joyce.kong@arm.com (mailing list archive)
State Superseded, archived
Headers
Series [v3] config: enable more than 128 cores for Arm64 platform |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Joyce Kong Nov. 22, 2018, 7:01 a.m. UTC
  When running dpdk applications on cores whose ids are bigger
than original max_core setting, eal error as below:
EAL: Detected 104 lcore(s)
EAL: Detected 2 NUMA nodes
EAL: invalid core list
-l CORELIST core indexes between 0 and 128

The fix is to increase max_core to 256 on Arm64 platform.

Fixes: b3ce00e5 ("mk: introduce ARMv8 architecture")
Cc: stable@dpdk.org

Signed-off-by: Joyce Kong <joyce.kong@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
---
 config/arm/meson.build                     | 5 +++--
 config/defconfig_arm64-armv8a-linuxapp-gcc | 1 +
 2 files changed, 4 insertions(+), 2 deletions(-)
  

Comments

Jerin Jacob Nov. 22, 2018, 7:08 a.m. UTC | #1
-----Original Message-----
> Date: Thu, 22 Nov 2018 15:01:14 +0800
> From: Joyce Kong <joyce.kong@arm.com>
> To: dev@dpdk.org
> CC: thomas@monjalon.net, jerin.jacob@caviumnetworks.com,
>  Honnappa.Nagarahalli@arm.com, gavin.hu@arm.com, stable@dpdk.org
> Subject: [PATCH v3] config: enable more than 128 cores for Arm64 platform
> X-Mailer: git-send-email 2.7.4
> 
> 
> When running dpdk applications on cores whose ids are bigger
> than original max_core setting, eal error as below:
> EAL: Detected 104 lcore(s)
> EAL: Detected 2 NUMA nodes
> EAL: invalid core list
> -l CORELIST core indexes between 0 and 128
> 
> The fix is to increase max_core to 256 on Arm64 platform.
> 
> Fixes: b3ce00e5 ("mk: introduce ARMv8 architecture")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Joyce Kong <joyce.kong@arm.com>
> Reviewed-by: Gavin Hu <gavin.hu@arm.com>
> ---
>  config/arm/meson.build                     | 5 +++--
>  config/defconfig_arm64-armv8a-linuxapp-gcc | 1 +
>  2 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/config/arm/meson.build b/config/arm/meson.build
> index b755138..9b5f09c 100644
> --- a/config/arm/meson.build
> +++ b/config/arm/meson.build
> @@ -46,13 +46,14 @@ flags_common_default = [
> 
>  flags_generic = [
>         ['RTE_MACHINE', '"armv8a"'],
> +    ['RTE_MAX_LCORE', 256],
>         ['RTE_CACHE_LINE_SIZE', 128]]
>  flags_cavium = [
>         ['RTE_MACHINE', '"thunderx"'],
>         ['RTE_CACHE_LINE_SIZE', 128],
>         ['RTE_MAX_NUMA_NODES', 2],
> -       ['RTE_MAX_LCORE', 96],
> -       ['RTE_MAX_VFIO_GROUPS', 128],
> +    ['RTE_MAX_LCORE', 256],

thunderx has only 96 cores. It the "thunderx2" which has more cores.
There no speerate config "thunderx2", it is using generic armv8 config.
So this specific line of change is not needed.

> +    ['RTE_MAX_VFIO_GROUPS', 128],
>         ['RTE_USE_C11_MEM_MODEL', false]]
>  flags_dpaa = [
>         ['RTE_MACHINE', '"dpaa"'],
> diff --git a/config/defconfig_arm64-armv8a-linuxapp-gcc b/config/defconfig_arm64-armv8a-linuxapp-gcc
> index 1842744..a6ed90c 100644
> --- a/config/defconfig_arm64-armv8a-linuxapp-gcc
> +++ b/config/defconfig_arm64-armv8a-linuxapp-gcc
> @@ -6,3 +6,4 @@
> 
>  CONFIG_RTE_TOOLCHAIN="gcc"
>  CONFIG_RTE_TOOLCHAIN_GCC=y
> +CONFIG_RTE_MAX_LCORE=256
> --
> 2.7.4
>
  
Joyce Kong Nov. 22, 2018, 7:43 a.m. UTC | #2
> -----Original Message-----
> From: Jerin Jacob <jerin.jacob@caviumnetworks.com>
> Sent: Thursday, November 22, 2018 3:09 PM
> To: Joyce Kong (Arm Technology China) <Joyce.Kong@arm.com>
> Cc: dev@dpdk.org; thomas@monjalon.net; Honnappa Nagarahalli
> <Honnappa.Nagarahalli@arm.com>; Gavin Hu (Arm Technology China)
> <Gavin.Hu@arm.com>; stable@dpdk.org
> Subject: Re: [PATCH v3] config: enable more than 128 cores for Arm64
> platform
>
> -----Original Message-----
> > Date: Thu, 22 Nov 2018 15:01:14 +0800
> > From: Joyce Kong <joyce.kong@arm.com>
> > To: dev@dpdk.org
> > CC: thomas@monjalon.net, jerin.jacob@caviumnetworks.com,
> > Honnappa.Nagarahalli@arm.com, gavin.hu@arm.com, stable@dpdk.org
> > Subject: [PATCH v3] config: enable more than 128 cores for Arm64
> > platform
> > X-Mailer: git-send-email 2.7.4
> >
> >
> > When running dpdk applications on cores whose ids are bigger than
> > original max_core setting, eal error as below:
> > EAL: Detected 104 lcore(s)
> > EAL: Detected 2 NUMA nodes
> > EAL: invalid core list
> > -l CORELIST core indexes between 0 and 128
> >
> > The fix is to increase max_core to 256 on Arm64 platform.
> >
> > Fixes: b3ce00e5 ("mk: introduce ARMv8 architecture")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Joyce Kong <joyce.kong@arm.com>
> > Reviewed-by: Gavin Hu <gavin.hu@arm.com>
> > ---
> >  config/arm/meson.build                     | 5 +++--
> >  config/defconfig_arm64-armv8a-linuxapp-gcc | 1 +
> >  2 files changed, 4 insertions(+), 2 deletions(-)
> >
> > diff --git a/config/arm/meson.build b/config/arm/meson.build index
> > b755138..9b5f09c 100644
> > --- a/config/arm/meson.build
> > +++ b/config/arm/meson.build
> > @@ -46,13 +46,14 @@ flags_common_default = [
> >
> >  flags_generic = [
> >         ['RTE_MACHINE', '"armv8a"'],
> > +    ['RTE_MAX_LCORE', 256],
> >         ['RTE_CACHE_LINE_SIZE', 128]]
> >  flags_cavium = [
> >         ['RTE_MACHINE', '"thunderx"'],
> >         ['RTE_CACHE_LINE_SIZE', 128],
> >         ['RTE_MAX_NUMA_NODES', 2],
> > -       ['RTE_MAX_LCORE', 96],
> > -       ['RTE_MAX_VFIO_GROUPS', 128],
> > +    ['RTE_MAX_LCORE', 256],
>
> thunderx has only 96 cores. It the "thunderx2" which has more cores.
> There no speerate config "thunderx2", it is using generic armv8 config.
> So this specific line of change is not needed.
>

Remove this specific line of change in V4.

> > +    ['RTE_MAX_VFIO_GROUPS', 128],
> >         ['RTE_USE_C11_MEM_MODEL', false]]  flags_dpaa = [
> >         ['RTE_MACHINE', '"dpaa"'],
> > diff --git a/config/defconfig_arm64-armv8a-linuxapp-gcc
> > b/config/defconfig_arm64-armv8a-linuxapp-gcc
> > index 1842744..a6ed90c 100644
> > --- a/config/defconfig_arm64-armv8a-linuxapp-gcc
> > +++ b/config/defconfig_arm64-armv8a-linuxapp-gcc
> > @@ -6,3 +6,4 @@
> >
> >  CONFIG_RTE_TOOLCHAIN="gcc"
> >  CONFIG_RTE_TOOLCHAIN_GCC=y
> > +CONFIG_RTE_MAX_LCORE=256
> > --
> > 2.7.4
> >
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
  

Patch

diff --git a/config/arm/meson.build b/config/arm/meson.build
index b755138..9b5f09c 100644
--- a/config/arm/meson.build
+++ b/config/arm/meson.build
@@ -46,13 +46,14 @@  flags_common_default = [
 
 flags_generic = [
 	['RTE_MACHINE', '"armv8a"'],
+    ['RTE_MAX_LCORE', 256],
 	['RTE_CACHE_LINE_SIZE', 128]]
 flags_cavium = [
 	['RTE_MACHINE', '"thunderx"'],
 	['RTE_CACHE_LINE_SIZE', 128],
 	['RTE_MAX_NUMA_NODES', 2],
-	['RTE_MAX_LCORE', 96],
-	['RTE_MAX_VFIO_GROUPS', 128],
+    ['RTE_MAX_LCORE', 256],
+    ['RTE_MAX_VFIO_GROUPS', 128],
 	['RTE_USE_C11_MEM_MODEL', false]]
 flags_dpaa = [
 	['RTE_MACHINE', '"dpaa"'],
diff --git a/config/defconfig_arm64-armv8a-linuxapp-gcc b/config/defconfig_arm64-armv8a-linuxapp-gcc
index 1842744..a6ed90c 100644
--- a/config/defconfig_arm64-armv8a-linuxapp-gcc
+++ b/config/defconfig_arm64-armv8a-linuxapp-gcc
@@ -6,3 +6,4 @@ 
 
 CONFIG_RTE_TOOLCHAIN="gcc"
 CONFIG_RTE_TOOLCHAIN_GCC=y
+CONFIG_RTE_MAX_LCORE=256