mirror of https://gitee.com/openkylin/linux.git
ACPI: Remove side effect of partly creating a node in acpi_get_node()
acpi_get_node() calls acpi_get_pxm() to evaluate the _PXM AML method for entries found in DSDT/SSDT. ACPI 6.3 sec 6.2.14 states "_PXM evaluates to an integer that identifies a device as belonging to a Proximity Domain defined in the System Resource Affinity Table (SRAT)." Hence a _PXM method should not result in creation of a new NUMA node. Before this patch, _PXM could result in partial instantiation of NUMA node, missing elements such as zone lists. A call to devm_kzalloc(), for example, results in a NULL pointer dereference. This patch therefore replaces the acpi_map_pxm_to_node() with a call to pxm_to_node(). Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Reviewed-by: Hanjun Guo <guohanjun@huawei.com> Reviewed-by: Barry Song <song.bao.hua@hisilicon.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
parent
4eb3723f18
commit
a62d07e000
|
@ -436,6 +436,6 @@ int acpi_get_node(acpi_handle handle)
|
|||
|
||||
pxm = acpi_get_pxm(handle);
|
||||
|
||||
return acpi_map_pxm_to_node(pxm);
|
||||
return pxm_to_node(pxm);
|
||||
}
|
||||
EXPORT_SYMBOL(acpi_get_node);
|
||||
|
|
Loading…
Reference in New Issue