[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.00.0904070035570.20262@chino.kir.corp.google.com>
Date: Tue, 7 Apr 2009 00:44:21 -0700 (PDT)
From: David Rientjes <rientjes@...gle.com>
To: Andi Kleen <andi@...stfloor.org>
cc: Brice Goglin <Brice.Goglin@...ia.fr>,
KOSAKI Motohiro <kosaki.motohiro@...fujitsu.com>,
Yinghai Lu <yhlu.kernel@...il.com>,
Chris Worley <worleys@...il.com>, linux-kernel@...r.kernel.org
Subject: Re: Off topic: Numactl "distance" wrong
On Tue, 7 Apr 2009, Andi Kleen wrote:
> I'm not aware of any that does. In general applications usually
> only use the bare basics of NUMA API (if at all), the fancy stuff tends
> to be more slideware.
>
> If it's true then the correct place would be to fix the BIOS.
>
We already verify that each node has local distance to itself and that its
distance to any other node is greater than local when determining whether
the SLIT is valid.
It would also be possible to verify that the distance between two
localities is described consistently in the table (like in the following
patch).
I do think it would be helpful to add an acpi=noslit option, however, that
would disable parsing the SLIT if it is known to incorrectly describe the
physical topology of the system.
---
diff --git a/drivers/acpi/numa.c b/drivers/acpi/numa.c
--- a/drivers/acpi/numa.c
+++ b/drivers/acpi/numa.c
@@ -172,6 +172,8 @@ static __init int slit_valid(struct acpi_table_slit *slit)
return 0;
} else if (val <= LOCAL_DISTANCE)
return 0;
+ if (val != slit->entry[d*j + i])
+ return 0;
}
}
return 1;
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists