[PATCH] arm64: numa: Don't check node against MAX_NUMNODES

Gavin Shan posted 1 patch 3 years, 9 months ago
arch/arm64/kernel/acpi_numa.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] arm64: numa: Don't check node against MAX_NUMNODES
Posted by Gavin Shan 3 years, 9 months ago
When the NUMA nodes are sorted by checking ACPI SRAT (GICC AFFINITY)
sub-table, it's impossible for acpi_map_pxm_to_node() to return
any value, which is greater than or equal to MAX_NUMNODES. Lets drop
the unnecessary check in acpi_numa_gicc_affinity_init().

No functional change intended.

Signed-off-by: Gavin Shan <gshan@redhat.com>
---
 arch/arm64/kernel/acpi_numa.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/kernel/acpi_numa.c b/arch/arm64/kernel/acpi_numa.c
index fdfecf0991ce..e51535a5f939 100644
--- a/arch/arm64/kernel/acpi_numa.c
+++ b/arch/arm64/kernel/acpi_numa.c
@@ -109,7 +109,7 @@ void __init acpi_numa_gicc_affinity_init(struct acpi_srat_gicc_affinity *pa)
 	pxm = pa->proximity_domain;
 	node = acpi_map_pxm_to_node(pxm);
 
-	if (node == NUMA_NO_NODE || node >= MAX_NUMNODES) {
+	if (node == NUMA_NO_NODE) {
 		pr_err("SRAT: Too many proximity domains %d\n", pxm);
 		bad_srat();
 		return;
-- 
2.23.0
Re: [PATCH] arm64: numa: Don't check node against MAX_NUMNODES
Posted by Will Deacon 3 years, 9 months ago
On Mon, 18 Jul 2022 14:42:32 +0800, Gavin Shan wrote:
> When the NUMA nodes are sorted by checking ACPI SRAT (GICC AFFINITY)
> sub-table, it's impossible for acpi_map_pxm_to_node() to return
> any value, which is greater than or equal to MAX_NUMNODES. Lets drop
> the unnecessary check in acpi_numa_gicc_affinity_init().
> 
> No functional change intended.
> 
> [...]

Applied to arm64 (for-next/misc), thanks!

[1/1] arm64: numa: Don't check node against MAX_NUMNODES
      https://git.kernel.org/arm64/c/9e26cac5f82b

Cheers,
-- 
Will

https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev
Re: [PATCH] arm64: numa: Don't check node against MAX_NUMNODES
Posted by Will Deacon 3 years, 9 months ago
On Mon, Jul 18, 2022 at 02:42:32PM +0800, Gavin Shan wrote:
> When the NUMA nodes are sorted by checking ACPI SRAT (GICC AFFINITY)
> sub-table, it's impossible for acpi_map_pxm_to_node() to return
> any value, which is greater than or equal to MAX_NUMNODES. Lets drop
> the unnecessary check in acpi_numa_gicc_affinity_init().
> 
> No functional change intended.
> 
> Signed-off-by: Gavin Shan <gshan@redhat.com>
> ---
>  arch/arm64/kernel/acpi_numa.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/arm64/kernel/acpi_numa.c b/arch/arm64/kernel/acpi_numa.c
> index fdfecf0991ce..e51535a5f939 100644
> --- a/arch/arm64/kernel/acpi_numa.c
> +++ b/arch/arm64/kernel/acpi_numa.c
> @@ -109,7 +109,7 @@ void __init acpi_numa_gicc_affinity_init(struct acpi_srat_gicc_affinity *pa)
>  	pxm = pa->proximity_domain;
>  	node = acpi_map_pxm_to_node(pxm);
>  
> -	if (node == NUMA_NO_NODE || node >= MAX_NUMNODES) {
> +	if (node == NUMA_NO_NODE) {
>  		pr_err("SRAT: Too many proximity domains %d\n", pxm);
>  		bad_srat();
>  		return;

This isn't "obviously" correct, but it does look like the way in which
acpi_map_pxm_to_node() allocates nodes in 'nodes_found_map' means that this
check is redundant, so I'll pick it up.

Will