[PATCH v3] RISC-V: Increase range and default value of NR_CPUS

Anup Patel anup at brainfault.org
Tue May 24 05:08:28 PDT 2022


Hi Palmer,

On Wed, Apr 20, 2022 at 4:54 PM Anup Patel <apatel at ventanamicro.com> wrote:
>
> Currently, the range and default value of NR_CPUS is too restrictive
> for high-end RISC-V systems with large number of HARTs. The latest
> QEMU virt machine supports upto 512 CPUs so the current NR_CPUS is
> restrictive for QEMU as well. Other major architectures (such as
> ARM64, x86_64, MIPS, etc) have a much higher range and default
> value of NR_CPUS.
>
> This patch increases NR_CPUS range to 2-512 and default value to
> XLEN (i.e. 32 for RV32 and 64 for RV64).
>
> Signed-off-by: Anup Patel <apatel at ventanamicro.com>

Can this PATCH be considered for 5.19 ?

Thanks,
Anup

> ---
> Changes since v2:
>  - Rebased on Linux-5.18-rc3
>  - Use a different range when SBI v0.1 is enabled
> Changes since v1:
>  - Updated NR_CPUS range to 2-512 which reflects maximum number of
>    CPUs supported by QEMU virt machine.
> ---
>  arch/riscv/Kconfig | 9 ++++++---
>  1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
> index 00fd9c548f26..1823f281069f 100644
> --- a/arch/riscv/Kconfig
> +++ b/arch/riscv/Kconfig
> @@ -275,10 +275,13 @@ config SMP
>           If you don't know what to do here, say N.
>
>  config NR_CPUS
> -       int "Maximum number of CPUs (2-32)"
> -       range 2 32
> +       int "Maximum number of CPUs (2-512)"
>         depends on SMP
> -       default "8"
> +       range 2 512 if !SBI_V01
> +       range 2 32 if SBI_V01 && 32BIT
> +       range 2 64 if SBI_V01 && 64BIT
> +       default "32" if 32BIT
> +       default "64" if 64BIT
>
>  config HOTPLUG_CPU
>         bool "Support for hot-pluggable CPUs"
> --
> 2.25.1
>



More information about the linux-riscv mailing list