mirror of
https://github.com/torvalds/linux.git
synced 2026-05-24 15:12:13 +02:00
acpi: Break out nesting for hmat_parse_locality()
Refactor hmat_parse_locality() to break up the deep nesting of the function. Suggested-by: Jonathan Cameron <Jonathan.Cameron@Huawei.com> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Signed-off-by: Dave Jiang <dave.jiang@intel.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Link: https://lore.kernel.org/r/170319617537.2212653.10625501075519862509.stgit@djiang5-mobl3 Signed-off-by: Dan Williams <dan.j.williams@intel.com>
This commit is contained in:
parent
6373c48b8c
commit
7920565112
|
|
@ -322,11 +322,28 @@ static __init void hmat_add_locality(struct acpi_hmat_locality *hmat_loc)
|
|||
}
|
||||
}
|
||||
|
||||
static __init void hmat_update_target(unsigned int tgt_pxm, unsigned int init_pxm,
|
||||
u8 mem_hier, u8 type, u32 value)
|
||||
{
|
||||
struct memory_target *target = find_mem_target(tgt_pxm);
|
||||
|
||||
if (mem_hier != ACPI_HMAT_MEMORY)
|
||||
return;
|
||||
|
||||
if (target && target->processor_pxm == init_pxm) {
|
||||
hmat_update_target_access(target, type, value,
|
||||
NODE_ACCESS_CLASS_0);
|
||||
/* If the node has a CPU, update access 1 */
|
||||
if (node_state(pxm_to_node(init_pxm), N_CPU))
|
||||
hmat_update_target_access(target, type, value,
|
||||
NODE_ACCESS_CLASS_1);
|
||||
}
|
||||
}
|
||||
|
||||
static __init int hmat_parse_locality(union acpi_subtable_headers *header,
|
||||
const unsigned long end)
|
||||
{
|
||||
struct acpi_hmat_locality *hmat_loc = (void *)header;
|
||||
struct memory_target *target;
|
||||
unsigned int init, targ, total_size, ipds, tpds;
|
||||
u32 *inits, *targs, value;
|
||||
u16 *entries;
|
||||
|
|
@ -367,17 +384,8 @@ static __init int hmat_parse_locality(union acpi_subtable_headers *header,
|
|||
inits[init], targs[targ], value,
|
||||
hmat_data_type_suffix(type));
|
||||
|
||||
if (mem_hier == ACPI_HMAT_MEMORY) {
|
||||
target = find_mem_target(targs[targ]);
|
||||
if (target && target->processor_pxm == inits[init]) {
|
||||
hmat_update_target_access(target, type, value,
|
||||
NODE_ACCESS_CLASS_0);
|
||||
/* If the node has a CPU, update access 1 */
|
||||
if (node_state(pxm_to_node(inits[init]), N_CPU))
|
||||
hmat_update_target_access(target, type, value,
|
||||
NODE_ACCESS_CLASS_1);
|
||||
}
|
||||
}
|
||||
hmat_update_target(targs[targ], inits[init],
|
||||
mem_hier, type, value);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user