diff options
author | Borislav Petkov <[email protected]> | 2009-12-11 18:14:40 +0100 |
---|---|---|
committer | H. Peter Anvin <[email protected]> | 2009-12-11 10:59:21 -0800 |
commit | 505422517d3f126bb939439e9d15dece94e11d2c (patch) | |
tree | a2d58c0b3cdf2b1c6b66eee6d78a283224ae1ac3 /drivers/mtd/lpddr/lpddr_cmds.c | |
parent | 5c6baba84e1ac6a79b266b40e17e692aab6604a1 (diff) |
x86, msr: Add support for non-contiguous cpumasks
The current rd/wrmsr_on_cpus helpers assume that the supplied
cpumasks are contiguous. However, there are machines out there
like some K8 multinode Opterons which have a non-contiguous core
enumeration on each node (e.g. cores 0,2 on node 0 instead of 0,1), see
http://www.gossamer-threads.com/lists/linux/kernel/1160268.
This patch fixes out-of-bounds writes (see URL above) by adding per-CPU
msr structs which are used on the respective cores.
Additionally, two helpers, msrs_{alloc,free}, are provided for use by
the callers of the MSR accessors.
Cc: H. Peter Anvin <[email protected]>
Cc: Mauro Carvalho Chehab <[email protected]>
Cc: Aristeu Rozanski <[email protected]>
Cc: Randy Dunlap <[email protected]>
Cc: Doug Thompson <[email protected]>
Signed-off-by: Borislav Petkov <[email protected]>
LKML-Reference: <20091211171440.GD31998@aftab>
Signed-off-by: H. Peter Anvin <[email protected]>
Diffstat (limited to 'drivers/mtd/lpddr/lpddr_cmds.c')
0 files changed, 0 insertions, 0 deletions