mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-13 22:14:20 +08:00
ACPI: NUMA: Fix the logic of getting the fake_pxm value
[ Upstream commit e3f577830c
]
The for loop does not iterate over the last element of the node_to_pxm_map
array. This could lead to a conflict between the final fake_pxm value and
the existing pxm values. That is, the final fake_pxm value can not be
guaranteed to be an unused pxm value.
While at it, fix up white space in slit_valid().
Signed-off-by: Yuntao Wang <ytcoode@gmail.com>
[ rjw: Changelog edits ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
a95c77f936
commit
f6bda29501
@ -183,7 +183,7 @@ static int __init slit_valid(struct acpi_table_slit *slit)
|
||||
int i, j;
|
||||
int d = slit->locality_count;
|
||||
for (i = 0; i < d; i++) {
|
||||
for (j = 0; j < d; j++) {
|
||||
for (j = 0; j < d; j++) {
|
||||
u8 val = slit->entry[d*i + j];
|
||||
if (i == j) {
|
||||
if (val != LOCAL_DISTANCE)
|
||||
@ -532,7 +532,7 @@ int __init acpi_numa_init(void)
|
||||
*/
|
||||
|
||||
/* fake_pxm is the next unused PXM value after SRAT parsing */
|
||||
for (i = 0, fake_pxm = -1; i < MAX_NUMNODES - 1; i++) {
|
||||
for (i = 0, fake_pxm = -1; i < MAX_NUMNODES; i++) {
|
||||
if (node_to_pxm_map[i] > fake_pxm)
|
||||
fake_pxm = node_to_pxm_map[i];
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user