summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/kern/kern_exit.c1
-rw-r--r--sys/kern/sys_process.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/sys/kern/kern_exit.c b/sys/kern/kern_exit.c
index f332e6b..419c4b2 100644
--- a/sys/kern/kern_exit.c
+++ b/sys/kern/kern_exit.c
@@ -458,6 +458,7 @@ exit1(struct thread *td, int rv)
pp = p->p_pptr;
PROC_UNLOCK(pp);
proc_reparent(p, initproc);
+ p->p_sigparent = SIGCHLD;
PROC_LOCK(p->p_pptr);
/*
* If this was the last child of our parent, notify
diff --git a/sys/kern/sys_process.c b/sys/kern/sys_process.c
index 9e49d9d..9a79551 100644
--- a/sys/kern/sys_process.c
+++ b/sys/kern/sys_process.c
@@ -561,6 +561,7 @@ kern_ptrace(struct thread *td, int req, pid_t pid, void *addr, int data)
PROC_UNLOCK(pp);
PROC_LOCK(p);
proc_reparent(p, pp);
+ p->p_sigparent = SIGCHLD;
}
p->p_flag &= ~(P_TRACED | P_WAITED);
p->p_oppid = 0;
OpenPOWER on IntegriCloud