[PATCH v3] RISC-V: Increase range and default value of NR_CPUS
Heinrich Schuchardt
heinrich.schuchardt at canonical.com
Thu Apr 21 00:04:55 PDT 2022
On 4/20/22 13:24, Anup Patel 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>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
> ---
> 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"
More information about the linux-riscv
mailing list