Subject: [PATCH] Documentation/admin-guide: kernel-parameters: correct the architectures for numa_balancing

X86 isn't the only architecture supporting NUMA_BALANCING. ARM64, PPC,
S390 and RISCV also support it:

arch$ git grep NUMA_BALANCING
arm64/Kconfig: select ARCH_SUPPORTS_NUMA_BALANCING
arm64/configs/defconfig:CONFIG_NUMA_BALANCING=y
arm64/include/asm/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
powerpc/configs/powernv_defconfig:CONFIG_NUMA_BALANCING=y
powerpc/configs/ppc64_defconfig:CONFIG_NUMA_BALANCING=y
powerpc/configs/pseries_defconfig:CONFIG_NUMA_BALANCING=y
powerpc/include/asm/book3s/64/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
powerpc/include/asm/book3s/64/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
powerpc/include/asm/book3s/64/pgtable.h:#endif /* CONFIG_NUMA_BALANCING */
powerpc/include/asm/book3s/64/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
powerpc/include/asm/book3s/64/pgtable.h:#endif /* CONFIG_NUMA_BALANCING */
powerpc/include/asm/nohash/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
powerpc/include/asm/nohash/pgtable.h:#endif /* CONFIG_NUMA_BALANCING */
powerpc/platforms/Kconfig.cputype: select ARCH_SUPPORTS_NUMA_BALANCING
riscv/Kconfig: select ARCH_SUPPORTS_NUMA_BALANCING
riscv/include/asm/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
s390/Kconfig: select ARCH_SUPPORTS_NUMA_BALANCING
s390/configs/debug_defconfig:CONFIG_NUMA_BALANCING=y
s390/configs/defconfig:CONFIG_NUMA_BALANCING=y
s390/include/asm/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
x86/Kconfig: select ARCH_SUPPORTS_NUMA_BALANCING if X86_64
x86/include/asm/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
x86/include/asm/pgtable.h:#endif /* CONFIG_NUMA_BALANCING */

On the other hand, setup_numabalancing() is implemented in mm/mempolicy.c
which doesn't depend on architectures.

Cc: Mel Gorman <[email protected]>
Cc: Paul Walmsley <[email protected]>
Cc: Palmer Dabbelt <[email protected]>
Cc: Albert Ou <[email protected]>
Cc: "Paul E. McKenney" <[email protected]>
Cc: Randy Dunlap <[email protected]>
Cc: Andrew Morton <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Mauro Carvalho Chehab <[email protected]>
Cc: Viresh Kumar <[email protected]>
Cc: Mike Kravetz <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Signed-off-by: Barry Song <[email protected]>
---
Documentation/admin-guide/kernel-parameters.rst | 1 +
Documentation/admin-guide/kernel-parameters.txt | 3 ++-
2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/Documentation/admin-guide/kernel-parameters.rst b/Documentation/admin-guide/kernel-parameters.rst
index 1132796a8d96..24302cad174a 100644
--- a/Documentation/admin-guide/kernel-parameters.rst
+++ b/Documentation/admin-guide/kernel-parameters.rst
@@ -140,6 +140,7 @@ parameter is applicable::
PPT Parallel port support is enabled.
PS2 Appropriate PS/2 support is enabled.
RAM RAM disk support is enabled.
+ RISCV RISCV architecture is enabled.
RDT Intel Resource Director Technology.
S390 S390 architecture is enabled.
SCSI Appropriate SCSI support is enabled.
diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index 04545725f187..371a02ae1e21 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -3472,7 +3472,8 @@

nr_uarts= [SERIAL] maximum number of UARTs to be registered.

- numa_balancing= [KNL,X86] Enable or disable automatic NUMA balancing.
+ numa_balancing= [KNL,ARM64,PPC,RISCV,S390,X86] Enable or disable automatic
+ NUMA balancing.
Allowed values are enable and disable

numa_zonelist_order= [KNL, BOOT] Select zonelist order for NUMA.
--
2.25.1


2021-03-05 00:00:15

by Palmer Dabbelt

[permalink] [raw]
Subject: Re: [PATCH] Documentation/admin-guide: kernel-parameters: correct the architectures for numa_balancing

On Tue, 02 Mar 2021 00:41:59 PST (-0800), [email protected] wrote:
> X86 isn't the only architecture supporting NUMA_BALANCING. ARM64, PPC,
> S390 and RISCV also support it:
>
> arch$ git grep NUMA_BALANCING
> arm64/Kconfig: select ARCH_SUPPORTS_NUMA_BALANCING
> arm64/configs/defconfig:CONFIG_NUMA_BALANCING=y
> arm64/include/asm/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
> powerpc/configs/powernv_defconfig:CONFIG_NUMA_BALANCING=y
> powerpc/configs/ppc64_defconfig:CONFIG_NUMA_BALANCING=y
> powerpc/configs/pseries_defconfig:CONFIG_NUMA_BALANCING=y
> powerpc/include/asm/book3s/64/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
> powerpc/include/asm/book3s/64/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
> powerpc/include/asm/book3s/64/pgtable.h:#endif /* CONFIG_NUMA_BALANCING */
> powerpc/include/asm/book3s/64/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
> powerpc/include/asm/book3s/64/pgtable.h:#endif /* CONFIG_NUMA_BALANCING */
> powerpc/include/asm/nohash/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
> powerpc/include/asm/nohash/pgtable.h:#endif /* CONFIG_NUMA_BALANCING */
> powerpc/platforms/Kconfig.cputype: select ARCH_SUPPORTS_NUMA_BALANCING
> riscv/Kconfig: select ARCH_SUPPORTS_NUMA_BALANCING
> riscv/include/asm/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
> s390/Kconfig: select ARCH_SUPPORTS_NUMA_BALANCING
> s390/configs/debug_defconfig:CONFIG_NUMA_BALANCING=y
> s390/configs/defconfig:CONFIG_NUMA_BALANCING=y
> s390/include/asm/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
> x86/Kconfig: select ARCH_SUPPORTS_NUMA_BALANCING if X86_64
> x86/include/asm/pgtable.h:#ifdef CONFIG_NUMA_BALANCING
> x86/include/asm/pgtable.h:#endif /* CONFIG_NUMA_BALANCING */
>
> On the other hand, setup_numabalancing() is implemented in mm/mempolicy.c
> which doesn't depend on architectures.
>
> Cc: Mel Gorman <[email protected]>
> Cc: Paul Walmsley <[email protected]>
> Cc: Palmer Dabbelt <[email protected]>
> Cc: Albert Ou <[email protected]>
> Cc: "Paul E. McKenney" <[email protected]>
> Cc: Randy Dunlap <[email protected]>
> Cc: Andrew Morton <[email protected]>
> Cc: Thomas Gleixner <[email protected]>
> Cc: Mauro Carvalho Chehab <[email protected]>
> Cc: Viresh Kumar <[email protected]>
> Cc: Mike Kravetz <[email protected]>
> Cc: Peter Zijlstra <[email protected]>
> Signed-off-by: Barry Song <[email protected]>
> ---
> Documentation/admin-guide/kernel-parameters.rst | 1 +
> Documentation/admin-guide/kernel-parameters.txt | 3 ++-
> 2 files changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/admin-guide/kernel-parameters.rst b/Documentation/admin-guide/kernel-parameters.rst
> index 1132796a8d96..24302cad174a 100644
> --- a/Documentation/admin-guide/kernel-parameters.rst
> +++ b/Documentation/admin-guide/kernel-parameters.rst
> @@ -140,6 +140,7 @@ parameter is applicable::
> PPT Parallel port support is enabled.
> PS2 Appropriate PS/2 support is enabled.
> RAM RAM disk support is enabled.
> + RISCV RISCV architecture is enabled.
> RDT Intel Resource Director Technology.
> S390 S390 architecture is enabled.
> SCSI Appropriate SCSI support is enabled.
> diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
> index 04545725f187..371a02ae1e21 100644
> --- a/Documentation/admin-guide/kernel-parameters.txt
> +++ b/Documentation/admin-guide/kernel-parameters.txt
> @@ -3472,7 +3472,8 @@
>
> nr_uarts= [SERIAL] maximum number of UARTs to be registered.
>
> - numa_balancing= [KNL,X86] Enable or disable automatic NUMA balancing.
> + numa_balancing= [KNL,ARM64,PPC,RISCV,S390,X86] Enable or disable automatic
> + NUMA balancing.
> Allowed values are enable and disable
>
> numa_zonelist_order= [KNL, BOOT] Select zonelist order for NUMA.

Reviewed-by: Palmer Dabbelt <[email protected]>
Acked-by: Palmer Dabbelt <[email protected]>

2021-03-09 00:23:20

by Jonathan Corbet

[permalink] [raw]
Subject: Re: [PATCH] Documentation/admin-guide: kernel-parameters: correct the architectures for numa_balancing

Barry Song <[email protected]> writes:

> X86 isn't the only architecture supporting NUMA_BALANCING. ARM64, PPC,
> S390 and RISCV also support it:

Applied, thanks.

jon