diff options
author | julian <julian@FreeBSD.org> | 2001-09-12 08:38:13 +0000 |
---|---|---|
committer | julian <julian@FreeBSD.org> | 2001-09-12 08:38:13 +0000 |
commit | 5596676e6c6c1e81e899cd0531f9b1c28a292669 (patch) | |
tree | b1a19fcdf05759281fab0d89efb13f0fdf42102e /sys/gnu/i386 | |
parent | 83e00d4274950d2b531c24692cd123538ffbddb9 (diff) | |
download | FreeBSD-src-5596676e6c6c1e81e899cd0531f9b1c28a292669.zip FreeBSD-src-5596676e6c6c1e81e899cd0531f9b1c28a292669.tar.gz |
KSE Milestone 2
Note ALL MODULES MUST BE RECOMPILED
make the kernel aware that there are smaller units of scheduling than the
process. (but only allow one thread per process at this time).
This is functionally equivalent to teh previousl -current except
that there is a thread associated with each process.
Sorry john! (your next MFC will be a doosie!)
Reviewed by: peter@freebsd.org, dillon@freebsd.org
X-MFC after: ha ha ha ha
Diffstat (limited to 'sys/gnu/i386')
-rw-r--r-- | sys/gnu/i386/fpemul/fpu_entry.c | 8 | ||||
-rw-r--r-- | sys/gnu/i386/fpemul/fpu_system.h | 2 |
2 files changed, 5 insertions, 5 deletions
diff --git a/sys/gnu/i386/fpemul/fpu_entry.c b/sys/gnu/i386/fpemul/fpu_entry.c index 77cee77..ec75bee 100644 --- a/sys/gnu/i386/fpemul/fpu_entry.c +++ b/sys/gnu/i386/fpemul/fpu_entry.c @@ -211,10 +211,10 @@ math_emulate(struct trapframe * tframe) REENTRANT_CHECK(ON); #endif /* PARANOID */ - if ((((struct pcb *) curproc->p_addr)->pcb_flags & FP_SOFTFP) == 0) { + if ((curthread->td_pcb->pcb_flags & FP_SOFTFP) == 0) { finit(); control_word = __INITIAL_NPXCW__; - ((struct pcb *) curproc->p_addr)->pcb_flags |= FP_SOFTFP; + curthread->td_pcb->pcb_flags |= FP_SOFTFP; } FPU_info = tframe; FPU_ORIG_EIP = FPU_EIP; /* --pink-- */ @@ -232,10 +232,10 @@ math_emulate(struct trapframe * tframe) #endif FPU_lookahead = FPU_LOOKAHEAD; - PROC_LOCK(curproc); + PROC_LOCK(curthread->td_proc); if (curproc->p_flag & P_TRACED) FPU_lookahead = 0; - PROC_UNLOCK(curproc); + PROC_UNLOCK(curthread->td_proc); do_another_FPU_instruction: diff --git a/sys/gnu/i386/fpemul/fpu_system.h b/sys/gnu/i386/fpemul/fpu_system.h index a77f0c2..f4927c8 100644 --- a/sys/gnu/i386/fpemul/fpu_system.h +++ b/sys/gnu/i386/fpemul/fpu_system.h @@ -69,7 +69,7 @@ #include <linux/kernel.h> */ -#define I387 (*(union i387_union *)&(((struct pcb *)curproc->p_addr)->pcb_save.sv_87)) +#define I387 (*(union i387_union *)&(curthread->td_pcb->pcb_save.sv_87)) #define FPU_info (I387.soft.frame) #define FPU_CS (*(unsigned short *) &(FPU_info->tf_cs)) |