diff options
Diffstat (limited to 'tapset/LKET/process.stp')
-rwxr-xr-x | tapset/LKET/process.stp | 16 |
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) } } |