Skip to content

Commit

Permalink
x86 / ACPI / NUMA: cleanup acpi_numa_processor_affinity_init()
Browse files Browse the repository at this point in the history
Cleanup acpi_numa_processor_affinity_init() in preparation for its
move to drivers/acpi/numa.c.  It will be reused by arm64, this has no
functional change.

Signed-off-by: Hanjun Guo <[email protected]>
Signed-off-by: Robert Richter <[email protected]>
Signed-off-by: David Daney <[email protected]>
Signed-off-by: Rafael J. Wysocki <[email protected]>
  • Loading branch information
hanjun-guo authored and rafaeljw committed May 30, 2016
1 parent 34c3337 commit 2faeff1
Showing 1 changed file with 5 additions and 16 deletions.
21 changes: 5 additions & 16 deletions arch/x86/mm/srat.c
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,6 @@

int acpi_numa __initdata;

static __init int setup_node(int pxm)
{
return acpi_map_pxm_to_node(pxm);
}

static __init void bad_srat(void)
{
printk(KERN_ERR "SRAT: SRAT not used.\n");
Expand Down Expand Up @@ -64,7 +59,7 @@ acpi_numa_x2apic_affinity_init(struct acpi_srat_x2apic_cpu_affinity *pa)
pxm, apic_id);
return;
}
node = setup_node(pxm);
node = acpi_map_pxm_to_node(pxm);
if (node < 0) {
printk(KERN_ERR "SRAT: Too many proximity domains %x\n", pxm);
bad_srat();
Expand Down Expand Up @@ -100,7 +95,7 @@ acpi_numa_processor_affinity_init(struct acpi_srat_cpu_affinity *pa)
pxm = pa->proximity_domain_lo;
if (acpi_srat_revision >= 2)
pxm |= *((unsigned int*)pa->proximity_domain_hi) << 8;
node = setup_node(pxm);
node = acpi_map_pxm_to_node(pxm);
if (node < 0) {
printk(KERN_ERR "SRAT: Too many proximity domains %x\n", pxm);
bad_srat();
Expand All @@ -124,12 +119,6 @@ acpi_numa_processor_affinity_init(struct acpi_srat_cpu_affinity *pa)
pxm, apic_id, node);
}

#ifdef CONFIG_MEMORY_HOTPLUG
static inline int save_add_info(void) {return 1;}
#else
static inline int save_add_info(void) {return 0;}
#endif

/* Callback for parsing of the Proximity Domain <-> Memory Area mappings */
int __init
acpi_numa_memory_affinity_init(struct acpi_srat_mem_affinity *ma)
Expand All @@ -145,7 +134,7 @@ acpi_numa_memory_affinity_init(struct acpi_srat_mem_affinity *ma)
if ((ma->flags & ACPI_SRAT_MEM_ENABLED) == 0)
goto out_err;
hotpluggable = ma->flags & ACPI_SRAT_MEM_HOT_PLUGGABLE;
if (hotpluggable && !save_add_info())
if (hotpluggable && !IS_ENABLED(CONFIG_MEMORY_HOTPLUG))
goto out_err;

start = ma->base_address;
Expand All @@ -154,7 +143,7 @@ acpi_numa_memory_affinity_init(struct acpi_srat_mem_affinity *ma)
if (acpi_srat_revision <= 1)
pxm &= 0xff;

node = setup_node(pxm);
node = acpi_map_pxm_to_node(pxm);
if (node < 0) {
printk(KERN_ERR "SRAT: Too many proximity domains.\n");
goto out_err_bad_srat;
Expand Down Expand Up @@ -182,7 +171,7 @@ acpi_numa_memory_affinity_init(struct acpi_srat_mem_affinity *ma)
out_err_bad_srat:
bad_srat();
out_err:
return -1;
return -EINVAL;
}

int __init x86_acpi_numa_init(void)
Expand Down

0 comments on commit 2faeff1

Please sign in to comment.