diff options
author | jhb <jhb@FreeBSD.org> | 2014-09-10 21:37:47 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2014-09-10 21:37:47 +0000 |
commit | fa53fae9e4783e35e0dfe1b2a3b7c12c507ecc7a (patch) | |
tree | 096dcded9470e01dbdcbd5fc7b3a662dda064543 /sys/pc98 | |
parent | 6f8d6cd57bddceacf4eae89310571ca78900e548 (diff) | |
download | FreeBSD-src-fa53fae9e4783e35e0dfe1b2a3b7c12c507ecc7a.zip FreeBSD-src-fa53fae9e4783e35e0dfe1b2a3b7c12c507ecc7a.tar.gz |
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.
Diffstat (limited to 'sys/pc98')
-rw-r--r-- | sys/pc98/pc98/machdep.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/pc98/pc98/machdep.c b/sys/pc98/pc98/machdep.c index 4ae80ae..c42b4ce 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 */ |