aboutsummaryrefslogtreecommitdiff
path: root/sys/kern/sys_process.c
diff options
context:
space:
mode:
authorMateusz Guzik <mjg@FreeBSD.org>2018-11-16 17:07:54 +0000
committerMateusz Guzik <mjg@FreeBSD.org>2018-11-16 17:07:54 +0000
commit2c054ce9242ce359b90ac244d87fa4bb71189161 (patch)
tree6ec9a29bab33bbb95e4fee975b51c06c5289ba2d /sys/kern/sys_process.c
parent14343799dc7d99cbadd5aab5481fbd05268c7841 (diff)
Notes
Diffstat (limited to 'sys/kern/sys_process.c')
-rw-r--r--sys/kern/sys_process.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/sys/kern/sys_process.c b/sys/kern/sys_process.c
index 2922b9f916fa..9198174d0eaa 100644
--- a/sys/kern/sys_process.c
+++ b/sys/kern/sys_process.c
@@ -695,7 +695,6 @@ proc_set_traced(struct proc *p, bool stop)
if (stop)
p->p_flag2 |= P2_PTRACE_FSTP;
p->p_ptevents = PTRACE_DEFAULT;
- p->p_oppid = p->p_pptr->p_pid;
}
int
@@ -919,7 +918,7 @@ kern_ptrace(struct thread *td, int req, pid_t pid, void *addr, int data)
*/
proc_set_traced(p, true);
if (p->p_pptr != td->td_proc) {
- proc_reparent(p, td->td_proc);
+ proc_reparent(p, td->td_proc, false);
}
CTR2(KTR_PTRACE, "PT_ATTACH: pid %d, oppid %d", p->p_pid,
p->p_oppid);
@@ -1113,7 +1112,7 @@ kern_ptrace(struct thread *td, int req, pid_t pid, void *addr, int data)
PROC_UNLOCK(p->p_pptr);
pp = proc_realparent(p);
- proc_reparent(p, pp);
+ proc_reparent(p, pp, false);
if (pp == initproc)
p->p_sigparent = SIGCHLD;
CTR3(KTR_PTRACE,
@@ -1122,7 +1121,6 @@ kern_ptrace(struct thread *td, int req, pid_t pid, void *addr, int data)
} else
CTR2(KTR_PTRACE, "PT_DETACH: pid %d, sig %d",
p->p_pid, data);
- p->p_oppid = 0;
p->p_ptevents = 0;
FOREACH_THREAD_IN_PROC(p, td3) {
if ((td3->td_dbgflags & TDB_FSTP) != 0) {