diff options
author | luoqi <luoqi@FreeBSD.org> | 1999-12-06 04:53:08 +0000 |
---|---|---|
committer | luoqi <luoqi@FreeBSD.org> | 1999-12-06 04:53:08 +0000 |
commit | 5c9244cd12f812687a0e1da3fa8fd69c320bdb42 (patch) | |
tree | 3d2bdc635a51af92e9000f2fe294d685906d5387 /sys/powerpc | |
parent | 5851b69ff706eaa8e3a487bdfbbf3fe0177ed46a (diff) | |
download | FreeBSD-src-5c9244cd12f812687a0e1da3fa8fd69c320bdb42.zip FreeBSD-src-5c9244cd12f812687a0e1da3fa8fd69c320bdb42.tar.gz |
User ldt sharing.
Diffstat (limited to 'sys/powerpc')
-rw-r--r-- | sys/powerpc/aim/vm_machdep.c | 6 | ||||
-rw-r--r-- | sys/powerpc/powerpc/vm_machdep.c | 6 |
2 files changed, 10 insertions, 2 deletions
diff --git a/sys/powerpc/aim/vm_machdep.c b/sys/powerpc/aim/vm_machdep.c index 989be9a..75bfef5 100644 --- a/sys/powerpc/aim/vm_machdep.c +++ b/sys/powerpc/aim/vm_machdep.c @@ -115,11 +115,15 @@ vm_fault_quick(v, prot) * ready to run and return to user mode. */ void -cpu_fork(p1, p2) +cpu_fork(p1, p2, flags) register struct proc *p1, *p2; + int flags; { struct user *up = p2->p_addr; + if ((flags & RFPROC) == 0) + return; + p2->p_md.md_tf = p1->p_md.md_tf; p2->p_md.md_flags = p1->p_md.md_flags & MDP_FPUSED; diff --git a/sys/powerpc/powerpc/vm_machdep.c b/sys/powerpc/powerpc/vm_machdep.c index 989be9a..75bfef5 100644 --- a/sys/powerpc/powerpc/vm_machdep.c +++ b/sys/powerpc/powerpc/vm_machdep.c @@ -115,11 +115,15 @@ vm_fault_quick(v, prot) * ready to run and return to user mode. */ void -cpu_fork(p1, p2) +cpu_fork(p1, p2, flags) register struct proc *p1, *p2; + int flags; { struct user *up = p2->p_addr; + if ((flags & RFPROC) == 0) + return; + p2->p_md.md_tf = p1->p_md.md_tf; p2->p_md.md_flags = p1->p_md.md_flags & MDP_FPUSED; |