aboutsummaryrefslogtreecommitdiffstats
path: root/arch/i386/kernel/apic.c
diff options
context:
space:
mode:
authorBernhard Kaindl <bk@suse.de>2007-05-02 19:27:17 +0200
committerAndi Kleen <andi@basil.nowhere.org>2007-05-02 19:27:17 +0200
commitde938c51d5fec4ae03af64b06beb15d4423ec611 (patch)
treeaabb457fda132a7d88e771427aa3da04c7944d4b /arch/i386/kernel/apic.c
parent[PATCH] x86: Save and restore the fixed-range MTRRs of the BSP when suspending (diff)
downloadlinux-dev-de938c51d5fec4ae03af64b06beb15d4423ec611.tar.xz
linux-dev-de938c51d5fec4ae03af64b06beb15d4423ec611.zip
[PATCH] i386: Enable support for fixed-range IORRs to keep RdMem & WrMem in sync
If our copy of the MTRRs of the BSP has RdMem or WrMem set, and we are running on an AMD64/K8 system, the boot CPU must have had MtrrFixDramEn and MtrrFixDramModEn set (otherwise our RDMSR would have copied these bits cleared), so we set them on this CPU as well. This allows us to keep the AMD64/K8 RdMem and WrMem bits in sync across the CPUs of SMP systems in order to fullfill the duty of system software to "initialize and maintain MTRR consistency across all processors." as written in the AMD and Intel manuals. If an WRMSR instruction fails because MtrrFixDramModEn is not set, I expect that also the Intel-style MTRR bits are not updated. AK: minor cleanup, moved MSR defines around Signed-off-by: Bernhard Kaindl <bk@suse.de> Signed-off-by: Andi Kleen <ak@suse.de> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Andi Kleen <ak@suse.de> Cc: Dave Jones <davej@codemonkey.org.uk>
Diffstat (limited to 'arch/i386/kernel/apic.c')
0 files changed, 0 insertions, 0 deletions