diff options
author | nyan <nyan@FreeBSD.org> | 2001-10-30 00:53:19 +0000 |
---|---|---|
committer | nyan <nyan@FreeBSD.org> | 2001-10-30 00:53:19 +0000 |
commit | 175300ac14135341ba2a1a777ce827d5e69cd75d (patch) | |
tree | ad76799af63111779de1bc3897daa6d639a022e0 /sys/pc98 | |
parent | 0876f23dd1c31b5171cb5264c0fb715675a836ea (diff) | |
download | FreeBSD-src-175300ac14135341ba2a1a777ce827d5e69cd75d.zip FreeBSD-src-175300ac14135341ba2a1a777ce827d5e69cd75d.tar.gz |
MFi386: sys/i386/i386/machdep.c revisions 1.481 and 1.482
Diffstat (limited to 'sys/pc98')
-rw-r--r-- | sys/pc98/i386/machdep.c | 7 | ||||
-rw-r--r-- | sys/pc98/pc98/machdep.c | 7 |
2 files changed, 10 insertions, 4 deletions
diff --git a/sys/pc98/i386/machdep.c b/sys/pc98/i386/machdep.c index 620dda1..3420815 100644 --- a/sys/pc98/i386/machdep.c +++ b/sys/pc98/i386/machdep.c @@ -103,6 +103,7 @@ #include <machine/md_var.h> #include <machine/pc/bios.h> #include <machine/pcb_ext.h> /* pcb.h included via sys/user.h */ +#include <machine/proc.h> #include <machine/globals.h> #ifdef PERFMON #include <machine/perfmon.h> @@ -893,8 +894,8 @@ setregs(td, entry, stack, ps_strings) struct trapframe *regs = td->td_frame; struct pcb *pcb = td->td_pcb; - if (pcb->pcb_ldt) - user_ldt_free(pcb); + if (td->td_proc->p_md.md_ldt) + user_ldt_free(td); bzero((char *)regs, sizeof(struct trapframe)); regs->tf_eip = entry; @@ -976,7 +977,9 @@ cpu_setregs(void) unsigned int cr0; cr0 = rcr0(); +#ifdef SMP cr0 |= CR0_NE; /* Done by npxinit() */ +#endif cr0 |= CR0_MP | CR0_TS; /* Done at every execve() too. */ #ifndef I386_CPU cr0 |= CR0_WP | CR0_AM; diff --git a/sys/pc98/pc98/machdep.c b/sys/pc98/pc98/machdep.c index 620dda1..3420815 100644 --- a/sys/pc98/pc98/machdep.c +++ b/sys/pc98/pc98/machdep.c @@ -103,6 +103,7 @@ #include <machine/md_var.h> #include <machine/pc/bios.h> #include <machine/pcb_ext.h> /* pcb.h included via sys/user.h */ +#include <machine/proc.h> #include <machine/globals.h> #ifdef PERFMON #include <machine/perfmon.h> @@ -893,8 +894,8 @@ setregs(td, entry, stack, ps_strings) struct trapframe *regs = td->td_frame; struct pcb *pcb = td->td_pcb; - if (pcb->pcb_ldt) - user_ldt_free(pcb); + if (td->td_proc->p_md.md_ldt) + user_ldt_free(td); bzero((char *)regs, sizeof(struct trapframe)); regs->tf_eip = entry; @@ -976,7 +977,9 @@ cpu_setregs(void) unsigned int cr0; cr0 = rcr0(); +#ifdef SMP cr0 |= CR0_NE; /* Done by npxinit() */ +#endif cr0 |= CR0_MP | CR0_TS; /* Done at every execve() too. */ #ifndef I386_CPU cr0 |= CR0_WP | CR0_AM; |