aboutsummaryrefslogtreecommitdiff
path: root/sys/pc98/pc98/machdep.c
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2014-09-10 21:37:47 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2014-09-10 21:37:47 +0000
commitde2b02fc74387da49a9b06e02b1e09313d4c7cf3 (patch)
tree096dcded9470e01dbdcbd5fc7b3a662dda064543 /sys/pc98/pc98/machdep.c
parent645b112b68c6c70b15edda94bbf610998c185c35 (diff)
downloadsrc-de2b02fc74387da49a9b06e02b1e09313d4c7cf3.tar.gz
src-de2b02fc74387da49a9b06e02b1e09313d4c7cf3.zip
MFamd64: Use initializecpu() to set various model-specific registers on
AP startup and AP resume (it was already used for BSP startup and BSP resume). - Split code to do one-time probing of cache properties out of initializecpu() and into initializecpucache(). This is called once on the BSP during boot. - Move enable_sse() into initializecpu(). - Call initializecpu() for AP startup instead of enable_sse() and manually frobbing MSR_EFER to enable PG_NX. - Call initializecpu() when an AP resumes. In theory this will now properly re-enable PG_NX in MSR_EFER when resuming a PAE kernel on APs.
Notes
Notes: svn path=/head/; revision=271409
Diffstat (limited to 'sys/pc98/pc98/machdep.c')
-rw-r--r--sys/pc98/pc98/machdep.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/pc98/pc98/machdep.c b/sys/pc98/pc98/machdep.c
index 4ae80ae5eada..c42b4ce4facb 100644
--- a/sys/pc98/pc98/machdep.c
+++ b/sys/pc98/pc98/machdep.c
@@ -2315,6 +2315,7 @@ init386(first)
setidt(IDT_GP, &IDTVEC(prot), SDT_SYS386TGT, SEL_KPL,
GSEL(GCODE_SEL, SEL_KPL));
initializecpu(); /* Initialize CPU registers */
+ initializecpucache();
/* make an initial tss so cpu can get interrupt stack on syscall! */
/* Note: -16 is so we can grow the trapframe if we came from vm86 */