Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 350245
b: refs/heads/master
c: 479a99a
h: refs/heads/master
i:
  350243: 3266feb
v: v3
  • Loading branch information
Davidlohr Bueso authored and Ingo Molnar committed Jan 24, 2013
1 parent d72ceb5 commit e2f6fce
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 15 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: b9975dabe3f0a6e4d1af52c47f66b5558df207a3
refs/heads/master: 479a99a8e510c8839e0d3d3de8391f8bc61b9760
29 changes: 15 additions & 14 deletions trunk/arch/x86/mm/srat.c
Original file line number Diff line number Diff line change
Expand Up @@ -149,39 +149,40 @@ acpi_numa_memory_affinity_init(struct acpi_srat_mem_affinity *ma)
int node, pxm;

if (srat_disabled())
return -1;
if (ma->header.length != sizeof(struct acpi_srat_mem_affinity)) {
bad_srat();
return -1;
}
goto out_err;
if (ma->header.length != sizeof(struct acpi_srat_mem_affinity))
goto out_err_bad_srat;
if ((ma->flags & ACPI_SRAT_MEM_ENABLED) == 0)
return -1;

goto out_err;
if ((ma->flags & ACPI_SRAT_MEM_HOT_PLUGGABLE) && !save_add_info())
return -1;
goto out_err;

start = ma->base_address;
end = start + ma->length;
pxm = ma->proximity_domain;
if (acpi_srat_revision <= 1)
pxm &= 0xff;

node = setup_node(pxm);
if (node < 0) {
printk(KERN_ERR "SRAT: Too many proximity domains.\n");
bad_srat();
return -1;
goto out_err_bad_srat;
}

if (numa_add_memblk(node, start, end) < 0) {
bad_srat();
return -1;
}
if (numa_add_memblk(node, start, end) < 0)
goto out_err_bad_srat;

node_set(node, numa_nodes_parsed);

printk(KERN_INFO "SRAT: Node %u PXM %u [mem %#010Lx-%#010Lx]\n",
node, pxm,
(unsigned long long) start, (unsigned long long) end - 1);

return 0;
out_err_bad_srat:
bad_srat();
out_err:
return -1;
}

void __init acpi_numa_arch_fixup(void) {}
Expand Down

0 comments on commit e2f6fce

Please sign in to comment.