Re: [PATCH] arm64: Kconfig: Enable NODES_SPAN_OTHER_NODES config for NUMA

From: Will Deacon
Date: Tue Jun 25 2019 - 06:12:52 EST


On Mon, Jun 24, 2019 at 02:38:28PM +0000, Hoan Tran OS wrote:
> Some NUMA nodes have memory ranges that span other nodes.
> Even though a pfn is valid and between a node's start and end pfns,
> it may not reside on that node.
>
> This patch enables NODES_SPAN_OTHER_NODES config for NUMA to support
> this type of NUMA layout.
>
> Signed-off-by: Hoan Tran <Hoan@xxxxxxxxxxxxxxxxxxxxxx>
> ---
> arch/arm64/Kconfig | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index 697ea05..21fc168 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -873,6 +873,13 @@ config NEED_PER_CPU_EMBED_FIRST_CHUNK
> config HOLES_IN_ZONE
> def_bool y
>
> +# Some NUMA nodes have memory ranges that span other nodes.
> +# Even though a pfn is valid and between a node's start and end pfns,
> +# it may not reside on that node.
> +config NODES_SPAN_OTHER_NODES
> + def_bool y
> + depends on ACPI_NUMA

How come this is specific to ACPI?

It would be nice if this was the default, given that only ia64, mips and
sh appear to be the only NUMA-capable architectures which don't have it.
In other words, replace the #ifdef CONFIG_NODES_SPAN_OTHER_NODES in
mm/page_alloc.c with #ifdef CONFIG_NUMA.

Will