Re: [PATCH 1/2] MIPS: Enable SPARSEMEM option unconditionally on 64BIT

From: Thomas Bogendoerfer
Date: Sat Dec 30 2023 - 10:39:47 EST


On Sat, Oct 28, 2023 at 02:52:16PM +0100, Jiaxun Yang wrote:
> SPARSEMEM have been tested on Cavium and Loongson64 for a while
> and we are confident that they are working properly on 64bit
> systems.
>
> Since it's almost certain for 64bit MIPS system to have a hole
> in memory space, SPARSEMEM will be more efficent for them.
>
> Also promote platforms marked with SPARSEMEM_ENABLE before
> to SPARSEMEM_DEFAULT, as they tend to have huge holes in
> address space.
>
> Signed-off-by: Jiaxun Yang <jiaxun.yang@xxxxxxxxxxx>
> ---
> arch/mips/Kconfig | 13 ++++++++-----
> arch/mips/loongson2ef/Kconfig | 4 ++--
> 2 files changed, 10 insertions(+), 7 deletions(-)
>
> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> index 76db82542519..d12e8f3c1d08 100644
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -460,7 +460,7 @@ config MACH_LOONGSON2EF
>
> config MACH_LOONGSON64
> bool "Loongson 64-bit family of machines"
> - select ARCH_SPARSEMEM_ENABLE
> + select ARCH_SPARSEMEM_DEFAULT
> select ARCH_MIGHT_HAVE_PC_PARPORT
> select ARCH_MIGHT_HAVE_PC_SERIO
> select GENERIC_ISA_DMA_SUPPORT_BROKEN
> @@ -656,7 +656,7 @@ config SGI_IP22
> config SGI_IP27
> bool "SGI IP27 (Origin200/2000)"
> select ARCH_HAS_PHYS_TO_DMA
> - select ARCH_SPARSEMEM_ENABLE
> + select ARCH_SPARSEMEM_DEFAULT
> select FW_ARC
> select FW_ARC64
> select ARC_CMDLINE_ONLY
> @@ -923,7 +923,7 @@ config CAVIUM_OCTEON_SOC
> select ZONE_DMA32
> select GPIOLIB
> select USE_OF
> - select ARCH_SPARSEMEM_ENABLE
> + select ARCH_SPARSEMEM_DEFAULT
> select SYS_SUPPORTS_SMP
> select NR_CPUS_DEFAULT_64
> select MIPS_NR_CPU_NR_MAP_1024
> @@ -2573,10 +2573,13 @@ config CPU_SUPPORTS_MSA
>
> config ARCH_FLATMEM_ENABLE
> def_bool y
> - depends on !NUMA && !CPU_LOONGSON2EF
>
> config ARCH_SPARSEMEM_ENABLE
> - bool
> + def_bool y
> + depends on 64BIT
> +
> +config ARCH_SELECT_MEMORY_MODEL
> + def_bool ARCH_SPARSEMEM_ENABLE

maybe I'm blind, but I don't see ARCH_SPARSEMEM_DEFAULT declared in
Kconfig for MIPS. So what I'm missing ?

Thomas.

--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]