[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <4AB3A1040200007800015BD3@vpn.id2.novell.com>
Date: Fri, 18 Sep 2009 14:02:28 +0100
From: "Jan Beulich" <JBeulich@...ell.com>
To: <borislav.petkov@....com>, <dougthompson@...ssion.com>
Cc: <linux-kernel@...r.kernel.org>
Subject: amd64_edac making improper assumptions?
Doug, Borislav,
the sizing of pvt_lookup[] and mci_lookup[] is done based on a config
setting (CONFIG_NODES_SHIFT), and the indexing happens using the
raw value read from hardware without any bounds checking. Hence,
running a kernel with e.g. !CONFIG_NUMA on a multi-socket system
would happily access other than the first and only array element.
Likewise, the use of rdmsr_on_cpu() doesn't seem to do what is
intended when !CONFIG_NUMA.
Also, assuming you can use cpumask_of_node() directly on the
node ID read from hardware seems bogus (even in general, but
namely again when MAX_NUMNODES is less than the actual number
of nodes).
Thanks for your explanation,
Jan
--
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