X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=instrumentation%2Fevents%2Flttng-module%2Flttng-statedump.h;h=ea0b6d9d99eeeade8aaec9be89cee228c85e729f;hb=73e8ba371039bc05745a739db4d69b4220a1c03e;hp=fc767873be0010fc2daa12997a9b5f6cf5e955e7;hpb=861df04fa95c6c5924a8abf4575164fa36a1beef;p=lttng-modules.git diff --git a/instrumentation/events/lttng-module/lttng-statedump.h b/instrumentation/events/lttng-module/lttng-statedump.h index fc767873..ea0b6d9d 100644 --- a/instrumentation/events/lttng-module/lttng-statedump.h +++ b/instrumentation/events/lttng-module/lttng-statedump.h @@ -5,6 +5,8 @@ #define _TRACE_LTTNG_STATEDUMP_H #include +#include +#include TRACE_EVENT(lttng_statedump_start, TP_PROTO(struct lttng_session *session), @@ -29,8 +31,9 @@ TRACE_EVENT(lttng_statedump_end, TRACE_EVENT(lttng_statedump_process_state, TP_PROTO(struct lttng_session *session, struct task_struct *p, - int type, int mode, int submode, int status), - TP_ARGS(session, p, type, mode, submode, status), + int type, int mode, int submode, int status, + struct pid_namespace *pid_ns), + TP_ARGS(session, p, type, mode, submode, status, pid_ns), TP_STRUCT__entry( __field(pid_t, tid) __field(pid_t, vtid) @@ -43,12 +46,13 @@ TRACE_EVENT(lttng_statedump_process_state, __field(int, mode) __field(int, submode) __field(int, status) + __field(int, ns_level) ), TP_fast_assign( tp_assign(tid, p->pid) - tp_assign(vtid, !p->nsproxy ? 0 : task_pid_vnr(p)) + tp_assign(vtid, pid_ns ? task_pid_nr_ns(p, pid_ns) : 0) tp_assign(pid, p->tgid) - tp_assign(vpid, !p->nsproxy ? 0 : task_tgid_vnr(p)) + tp_assign(vpid, pid_ns ? task_tgid_nr_ns(p, pid_ns) : 0) tp_assign(ppid, ({ pid_t ret; @@ -61,14 +65,11 @@ TRACE_EVENT(lttng_statedump_process_state, tp_assign(vppid, ({ struct task_struct *parent; - pid_t ret; + pid_t ret = 0; rcu_read_lock(); - parent = rcu_dereference(current->real_parent); - if (!parent->nsproxy) - ret = 0; - else - ret = task_tgid_nr(parent); + parent = rcu_dereference(p->real_parent); + ret = task_tgid_nr_ns(parent, pid_ns); rcu_read_unlock(); ret; })) @@ -77,6 +78,7 @@ TRACE_EVENT(lttng_statedump_process_state, tp_assign(mode, mode) tp_assign(submode, submode) tp_assign(status, status) + tp_assign(ns_level, pid_ns ? pid_ns->level : 0) ), TP_printk("") ) @@ -92,7 +94,7 @@ TRACE_EVENT(lttng_statedump_file_descriptor, ), TP_fast_assign( tp_assign(pid, p->tgid) - tp_assign(fd, p->tgid) + tp_assign(fd, fd) tp_strcpy(filename, filename) ), TP_printk("")