diff options
Diffstat (limited to 'sys/kern/kern_fork.c')
-rw-r--r-- | sys/kern/kern_fork.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/sys/kern/kern_fork.c b/sys/kern/kern_fork.c index 8bec2fa..ce5d6aa 100644 --- a/sys/kern/kern_fork.c +++ b/sys/kern/kern_fork.c @@ -36,6 +36,7 @@ * SUCH DAMAGE. * * @(#)kern_fork.c 8.6 (Berkeley) 4/8/94 + * $Id: kern_fork.c,v 1.4 1994/08/06 07:15:04 davidg Exp $ */ #include <sys/param.h> @@ -51,10 +52,13 @@ #include <sys/acct.h> #include <sys/ktrace.h> +static int fork1(struct proc *, int, int *); + struct fork_args { int dummy; }; /* ARGSUSED */ +int fork(p, uap, retval) struct proc *p; struct fork_args *uap; @@ -65,6 +69,7 @@ fork(p, uap, retval) } /* ARGSUSED */ +int vfork(p, uap, retval) struct proc *p; struct fork_args *uap; @@ -76,6 +81,7 @@ vfork(p, uap, retval) int nprocs = 1; /* process 0 */ +static int fork1(p1, isvfork, retval) register struct proc *p1; int isvfork, retval[]; @@ -258,10 +264,16 @@ again: #endif /* + * set priority of child to be that of parent + */ + p2->p_estcpu = p1->p_estcpu; + + /* * This begins the section where we must prevent the parent * from being swapped. */ p1->p_flag |= P_NOSWAP; + /* * Set return values for child before vm_fork, * so they can be copied to child stack. |