Index: kern/kern_fork.c =================================================================== RCS file: /home/ncvs/src/sys/kern/kern_fork.c,v retrieving revision 1.203 diff -u -p -r1.203 kern_fork.c --- kern/kern_fork.c 19 Jun 2003 05:57:25 -0000 1.203 +++ kern/kern_fork.c 8 Jul 2003 18:20:48 -0000 @@ -590,6 +590,7 @@ again: if (flags & RFPPWAIT) p2->p_flag |= P_PPWAIT; + p2->p_pgrp = p1->p_pgrp; LIST_INSERT_AFTER(p1, p2, p_pglist); PGRP_UNLOCK(p1->p_pgrp); LIST_INIT(&p2->p_children); Index: sys/proc.h =================================================================== RCS file: /home/ncvs/src/sys/sys/proc.h,v retrieving revision 1.339 diff -u -p -r1.339 proc.h --- sys/proc.h 28 Jun 2003 08:29:04 -0000 1.339 +++ sys/proc.h 9 Jul 2003 00:52:03 -0000 @@ -587,7 +587,6 @@ struct proc { stack_t p_sigstk; /* (c) Stack ptr and on-stack flag. */ u_int p_magic; /* (b) Magic number. */ char p_comm[MAXCOMLEN + 1]; /* (b) Process name. */ - struct pgrp *p_pgrp; /* (c + e) Pointer to process group. */ struct sysentvec *p_sysent; /* (b) Syscall dispatch info. */ struct pargs *p_args; /* (c) Process arguments. */ rlim_t p_cpulimit; /* (j) Current CPU limit in seconds. */ @@ -595,6 +594,7 @@ struct proc { #define p_endcopy p_xstat u_short p_xstat; /* (c) Exit status; also stop sig. */ + struct pgrp *p_pgrp; /* (c + e) Pointer to process group. */ int p_numthreads; /* (j) Number of threads. */ int p_numksegrps; /* (?) number of ksegrps */ struct mdproc p_md; /* Any machine-dependent fields. */