summaryrefslogtreecommitdiffstats
path: root/tapset/LKET/process.stp
diff options
context:
space:
mode:
Diffstat (limited to 'tapset/LKET/process.stp')
-rwxr-xr-xtapset/LKET/process.stp16
1 files changed, 11 insertions, 5 deletions
diff --git a/tapset/LKET/process.stp b/tapset/LKET/process.stp
index f09e97ba..b9dbb4dc 100755
--- a/tapset/LKET/process.stp
+++ b/tapset/LKET/process.stp
@@ -9,15 +9,21 @@
function log_execve_tracedata(var_id:long, var:long)
%{
long tmp=(long)THIS->var;
- _lket_trace(_GROUP_PROCESS, THIS->var_id, "%0s", (char *)tmp);
+ _lket_trace(_GROUP_PROCESS, THIS->var_id, "%4b%0s",
+ current->tgid, (char *)tmp);
%}
/* record the newly forked process id */
-function log_fork_tracedata(var_id:long, var:long)
+function log_fork_tracedata(var_id:long, task:long)
%{
+ /*
pid_t pid = (pid_t)THIS->var;
_lket_trace(_GROUP_PROCESS, THIS->var_id, "%4b", (_FMT_)pid);
+ */
+ struct task_struct *task = (struct task_struct *)THIS->task;
+ _lket_trace(_GROUP_PROCESS, THIS->var_id, "%4b%4b%4b", (_FMT_)task->pid,
+ (_FMT_)task->tgid, (_FMT_)task->parent->tgid);
%}
@@ -38,8 +44,8 @@ function process_snapshot()
name for each entry */
list_for_each(cur, head) {
tsk = (struct task_struct *)(list_entry(cur, struct task_struct, tasks));
- _lket_trace(_GROUP_PROCESS, _HOOKID_PROCESS_SNAPSHOT, "%4b%0s",
- (_FMT_)tsk->pid, tsk->comm);
+ _lket_trace(_GROUP_PROCESS, _HOOKID_PROCESS_SNAPSHOT, "%4b%4b%4b%0s",
+ (_FMT_)tsk->pid, (_FMT_)tsk->tgid, (_FMT_)tsk->parent->tgid, tsk->comm);
#if !defined(ASCII_TRACE)
total_length = &_stp_pbuf[cpu][STP_PRINT_BUF_START];
*(int16_t *)total_length = _stp_pbuf_len[cpu] - 4;
@@ -81,6 +87,6 @@ probe _addevent.process.fork
= process.create
{
if(filter_by_pid() == 1 ) {
- log_fork_tracedata(HOOKID_PROCESS_FORK, new_pid)
+ log_fork_tracedata(HOOKID_PROCESS_FORK, $return)
}
}