summaryrefslogtreecommitdiffstats
path: root/runtime/task_finder.c
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/task_finder.c')
-rw-r--r--runtime/task_finder.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/runtime/task_finder.c b/runtime/task_finder.c
index e233d463..9c8acfa0 100644
--- a/runtime/task_finder.c
+++ b/runtime/task_finder.c
@@ -418,10 +418,14 @@ __stp_utrace_task_finder_report_exec(struct utrace_attached_engine *engine,
// '/bin/bash' clones and then execs '/bin/ls'. If the user
// was probing '/bin/bash', the cloned thread is still
// '/bin/bash' up until the exec.
- if (tsk != NULL && tsk->parent != NULL && tsk->parent->pid > 1) {
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,25)
+#define real_parent parent
+#endif
+ if (tsk != NULL && tsk->real_parent != NULL
+ && tsk->real_parent->pid > 1) {
// We'll hardcode this as a process end, but a thread
// *could* call exec (although they aren't supposed to).
- __stp_utrace_attach_match_tsk(tsk->parent, tsk, 0, 1);
+ __stp_utrace_attach_match_tsk(tsk->real_parent, tsk, 0, 1);
}
// On exec, check bprm