summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_fork.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/kern/kern_fork.c')
-rw-r--r--sys/kern/kern_fork.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/sys/kern/kern_fork.c b/sys/kern/kern_fork.c
index 7d2c65c..17387f8 100644
--- a/sys/kern/kern_fork.c
+++ b/sys/kern/kern_fork.c
@@ -447,6 +447,9 @@ again:
if (pages != 0)
pmap_new_altkstack(td2, pages);
+ PROC_LOCK(p2);
+ PROC_LOCK(p1);
+
#define RANGEOF(type, start, end) (offsetof(type, end) - offsetof(type, start))
bzero(&p2->p_startzero,
@@ -458,10 +461,6 @@ again:
bzero(&kg2->kg_startzero,
(unsigned) RANGEOF(struct ksegrp, kg_startzero, kg_endzero));
- mtx_init(&p2->p_mtx, "process lock", NULL, MTX_DEF | MTX_DUPOK);
- PROC_LOCK(p2);
- PROC_LOCK(p1);
-
bcopy(&p1->p_startcopy, &p2->p_startcopy,
(unsigned) RANGEOF(struct proc, p_startcopy, p_endcopy));
bcopy(&td->td_startcopy, &td2->td_startcopy,
OpenPOWER on IntegriCloud