diff options
Diffstat (limited to 'sys/arch/i386')
-rw-r--r-- | sys/arch/i386/i386/apicvec.s | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/arch/i386/i386/apicvec.s b/sys/arch/i386/i386/apicvec.s index bef1d855c14..feaaf66d4aa 100644 --- a/sys/arch/i386/i386/apicvec.s +++ b/sys/arch/i386/i386/apicvec.s @@ -1,4 +1,4 @@ -/* $OpenBSD: apicvec.s,v 1.17 2009/06/03 00:49:12 art Exp $ */ +/* $OpenBSD: apicvec.s,v 1.18 2009/06/06 22:37:34 guenther Exp $ */ /* $NetBSD: apicvec.s,v 1.1.2.2 2000/02/21 21:54:01 sommerfeld Exp $ */ /*- @@ -133,6 +133,9 @@ XINTR(ipi_reloadcr3): pushl %ds movl $GSEL(GDATA_SEL, SEL_KPL), %eax movl %eax, %ds + pushl %fs + movl $GSEL(GCPU_SEL, SEL_KPL),%eax + movw %ax,%fs ioapic_asm_ack() @@ -145,6 +148,7 @@ XINTR(ipi_reloadcr3): lock decl tlb_shoot_wait + popl %fs popl %ds popl %eax iret |