summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarkj <markj@FreeBSD.org>2014-08-21 19:45:52 +0000
committermarkj <markj@FreeBSD.org>2014-08-21 19:45:52 +0000
commita576189f8b1b23c7dbd3748be9fee03a871d5a3d (patch)
treeedc09991f1cd586cfa91768ae305a34822d222bb
parentc11c6b79511d6994540355e671cd715fba04af23 (diff)
downloadFreeBSD-src-a576189f8b1b23c7dbd3748be9fee03a871d5a3d.zip
FreeBSD-src-a576189f8b1b23c7dbd3748be9fee03a871d5a3d.tar.gz
MFC r269525:
Return 0 for the PPID of threads in process 0, as process 0 doesn't have a parent process.
-rw-r--r--sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c b/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c
index 56bea28..1de2916 100644
--- a/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c
+++ b/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c
@@ -3415,7 +3415,10 @@ dtrace_dif_variable(dtrace_mstate_t *mstate, dtrace_state_t *state, uint64_t v,
*/
return ((uint64_t)curthread->t_procp->p_ppid);
#else
- return ((uint64_t)curproc->p_pptr->p_pid);
+ if (curproc->p_pid == proc0.p_pid)
+ return (curproc->p_pid);
+ else
+ return (curproc->p_pptr->p_pid);
#endif
case DIF_VAR_TID:
OpenPOWER on IntegriCloud