Re: [PATCH v3 3/5] ACPI/NUMA: Remove architecture dependent remainings

Jonathan Cameron
2024-04-22T16:48:57Z

On Fri, 19 Apr 2024 16:02:01 +0200
Robert Richter <rrichter@amd.com> wrote:

> With the removal of the Itanium architecture [1] the last architecture
> dependent functions:
>
> acpi_numa_slit_init(), acpi_numa_memory_affinity_init()
>
> were removed. Remove its remainings in the header files too an make
> them static.
>
> [1] commit cf8e8658100d ("arch: Remove Itanium (IA-64) architecture")
>
> Signed-off-by: Robert Richter <rrichter@amd.com>

The slit change is fine, but what about the cfmws function in here
where a stub was removed as well. Looks sensible as it relied on the
implementation details of acpi_numa_memory_affinity_init() but
should probably call it out in the description and say why it no
longer needs to be protected like this.

Jonathan

> ---
> drivers/acpi/numa/srat.c | 17 ++---------------
> include/linux/acpi.h | 5 -----
> 2 files changed, 2 insertions(+), 20 deletions(-)
>
> diff --git a/drivers/acpi/numa/srat.c b/drivers/acpi/numa/srat.c
> index 43417b4920da..bd0e2d342ba2 100644
> --- a/drivers/acpi/numa/srat.c
> +++ b/drivers/acpi/numa/srat.c
> @@ -208,13 +208,12 @@ int __init srat_disabled(void)
> return acpi_numa < 0;
> }
>
> -#if defined(CONFIG_X86) || defined(CONFIG_ARM64) || defined(CONFIG_LOONGARCH)
> /*
> * Callback for SLIT parsing. pxm_to_node() returns NUMA_NO_NODE for
> * I/O localities since SRAT does not list them. I/O localities are
> * not supported at this point.
> */
> -void __init acpi_numa_slit_init(struct acpi_table_slit *slit)
> +static void __init acpi_numa_slit_init(struct acpi_table_slit *slit)
> {
> int i, j;
>
> @@ -236,11 +235,7 @@ void __init acpi_numa_slit_init(struct acpi_table_slit *slit)
> }
> }
>
> -/*
> - * Default callback for parsing of the Proximity Domain <-> Memory
> - * Area mappings
> - */
> -int __init
> +static int __init
> acpi_numa_memory_affinity_init(struct acpi_srat_mem_affinity *ma)
> {
> u64 start, end;
> @@ -456,14 +451,6 @@ static int __init acpi_parse_cfmws(union acpi_subtable_headers *header,
> (*fake_pxm)++;
> return 0;
> }
> -#else
> -static inline void acpi_table_print_cedt(void) {}
> -static int __init acpi_parse_cfmws(union acpi_subtable_headers *header,
> - void *arg, const unsigned long table_end)
> -{
> - return 0;
> -}
> -#endif /* defined(CONFIG_X86) || defined (CONFIG_ARM64) */
>
> static int __init acpi_parse_slit(struct acpi_table_header *table)
> {
> diff --git a/include/linux/acpi.h b/include/linux/acpi.h
> index 34829f2c517a..2c227b61a452 100644
> --- a/include/linux/acpi.h
> +++ b/include/linux/acpi.h
> @@ -242,9 +242,6 @@ static inline bool acpi_gicc_is_usable(struct acpi_madt_generic_interrupt *gicc)
> return gicc->flags & ACPI_MADT_ENABLED;
> }
>
> -/* the following numa functions are architecture-dependent */
> -void acpi_numa_slit_init (struct acpi_table_slit *slit);
> -
> #if defined(CONFIG_X86) || defined(CONFIG_LOONGARCH)
> void acpi_numa_processor_affinity_init (struct acpi_srat_cpu_affinity *pa);
> #else
> @@ -267,8 +264,6 @@ static inline void
> acpi_numa_gicc_affinity_init(struct acpi_srat_gicc_affinity *pa) { }
> #endif
>
> -int acpi_numa_memory_affinity_init (struct acpi_srat_mem_affinity *ma);
> -
> #ifndef PHYS_CPUID_INVALID
> typedef u32 phys_cpuid_t;
> #define PHYS_CPUID_INVALID (phys_cpuid_t)(-1)