|
@@ -104,9 +104,14 @@ static int __init of_numa_parse_distance_map_v1(struct device_node *map)
|
|
|
distance = of_read_number(matrix, 1);
|
|
|
matrix++;
|
|
|
|
|
|
+ if ((nodea == nodeb && distance != LOCAL_DISTANCE) ||
|
|
|
+ (nodea != nodeb && distance <= LOCAL_DISTANCE)) {
|
|
|
+ pr_err("Invalid distance[node%d -> node%d] = %d\n",
|
|
|
+ nodea, nodeb, distance);
|
|
|
+ return -EINVAL;
|
|
|
+ }
|
|
|
+
|
|
|
numa_set_distance(nodea, nodeb, distance);
|
|
|
- pr_debug("distance[node%d -> node%d] = %d\n",
|
|
|
- nodea, nodeb, distance);
|
|
|
|
|
|
/* Set default distance of node B->A same as A->B */
|
|
|
if (nodeb > nodea)
|