summaryrefslogtreecommitdiffstats
path: root/sys/i386/isa/nmi.c
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2002-02-27 09:51:33 +0000
committerpeter <peter@FreeBSD.org>2002-02-27 09:51:33 +0000
commitf2dee2e96fb9d27ab90c25bed77ca68fe1dbcaf9 (patch)
tree9dff19aa68b1b5fb938a1f6533c4971702c3e104 /sys/i386/isa/nmi.c
parentfddda3307dd74c84941a41b9226b67ad3a2f1a99 (diff)
downloadFreeBSD-src-f2dee2e96fb9d27ab90c25bed77ca68fe1dbcaf9.zip
FreeBSD-src-f2dee2e96fb9d27ab90c25bed77ca68fe1dbcaf9.tar.gz
Back out all the pmap related stuff I've touched over the last few days.
There is some unresolved badness that has been eluding me, particularly affecting uniprocessor kernels. Turning off PG_G helped (which is a bad sign) but didn't solve it entirely. Userland programs still crashed.
Diffstat (limited to 'sys/i386/isa/nmi.c')
-rw-r--r--sys/i386/isa/nmi.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sys/i386/isa/nmi.c b/sys/i386/isa/nmi.c
index 92bf581..cfc162b 100644
--- a/sys/i386/isa/nmi.c
+++ b/sys/i386/isa/nmi.c
@@ -499,6 +499,14 @@ icu_setup(int intr, driver_intr_t *handler, void *arg, int flags)
}
else {
vector = TPR_SLOW_INTS + intr;
+#ifdef APIC_INTR_REORDER
+#ifdef APIC_INTR_HIGHPRI_CLOCK
+ /* XXX: Hack (kludge?) for more accurate clock. */
+ if (intr == apic_8254_intr || intr == 8) {
+ vector = TPR_FAST_INTS + intr;
+ }
+#endif
+#endif
setidt(vector, slowintr[intr],
SDT_SYS386IGT, SEL_KPL, GSEL(GCODE_SEL, SEL_KPL));
}
OpenPOWER on IntegriCloud