projects
/
lttng-modules.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: ext4 update instrumentation to 3.15 kernel
[lttng-modules.git]
/
instrumentation
/
events
/
lttng-module
/
lttng-statedump.h
diff --git
a/instrumentation/events/lttng-module/lttng-statedump.h
b/instrumentation/events/lttng-module/lttng-statedump.h
index 5fc15a88be8234d7a7e576be12ef5e1f8d4a4ad0..e4c86d659373307b232216be42f85efc590a7e65 100644
(file)
--- a/
instrumentation/events/lttng-module/lttng-statedump.h
+++ b/
instrumentation/events/lttng-module/lttng-statedump.h
@@
-6,6
+6,7
@@
#include <linux/tracepoint.h>
#include <linux/nsproxy.h>
#include <linux/tracepoint.h>
#include <linux/nsproxy.h>
+#include <linux/pid_namespace.h>
TRACE_EVENT(lttng_statedump_start,
TP_PROTO(struct lttng_session *session),
TRACE_EVENT(lttng_statedump_start,
TP_PROTO(struct lttng_session *session),
@@
-30,8
+31,9
@@
TRACE_EVENT(lttng_statedump_end,
TRACE_EVENT(lttng_statedump_process_state,
TP_PROTO(struct lttng_session *session,
struct task_struct *p,
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)
TP_STRUCT__entry(
__field(pid_t, tid)
__field(pid_t, vtid)
@@
-44,38
+46,13
@@
TRACE_EVENT(lttng_statedump_process_state,
__field(int, mode)
__field(int, submode)
__field(int, status)
__field(int, mode)
__field(int, submode)
__field(int, status)
+ __field(int, ns_level)
),
TP_fast_assign(
tp_assign(tid, p->pid)
),
TP_fast_assign(
tp_assign(tid, p->pid)
- tp_assign(vtid,
- ({
- struct nsproxy *proxy;
- pid_t ret = 0;
-
- rcu_read_lock();
- proxy = task_nsproxy(p);
- if (proxy) {
- ret = task_pid_nr_ns(p,
- proxy->pid_ns);
- }
- rcu_read_unlock();
- ret;
- }))
+ tp_assign(vtid, pid_ns ? task_pid_nr_ns(p, pid_ns) : 0)
tp_assign(pid, p->tgid)
tp_assign(pid, p->tgid)
- tp_assign(vpid,
- ({
- struct nsproxy *proxy;
- pid_t ret = 0;
-
- rcu_read_lock();
- proxy = task_nsproxy(p);
- if (proxy) {
- ret = task_tgid_nr_ns(p,
- proxy->pid_ns);
- }
- rcu_read_unlock();
- ret;
- }))
+ tp_assign(vpid, pid_ns ? task_tgid_nr_ns(p, pid_ns) : 0)
tp_assign(ppid,
({
pid_t ret;
tp_assign(ppid,
({
pid_t ret;
@@
-88,17
+65,14
@@
TRACE_EVENT(lttng_statedump_process_state,
tp_assign(vppid,
({
struct task_struct *parent;
tp_assign(vppid,
({
struct task_struct *parent;
- struct nsproxy *proxy;
pid_t ret = 0;
pid_t ret = 0;
- rcu_read_lock();
- parent = rcu_dereference(p->real_parent);
- proxy = task_nsproxy(parent);
- if (proxy) {
- ret = task_tgid_nr_ns(parent,
- proxy->pid_ns);
+ if (pid_ns) {
+ rcu_read_lock();
+ parent = rcu_dereference(p->real_parent);
+ ret = task_tgid_nr_ns(parent, pid_ns);
+ rcu_read_unlock();
}
}
- rcu_read_unlock();
ret;
}))
tp_memcpy(name, p->comm, TASK_COMM_LEN)
ret;
}))
tp_memcpy(name, p->comm, TASK_COMM_LEN)
@@
-106,6
+80,7
@@
TRACE_EVENT(lttng_statedump_process_state,
tp_assign(mode, mode)
tp_assign(submode, submode)
tp_assign(status, status)
tp_assign(mode, mode)
tp_assign(submode, submode)
tp_assign(status, status)
+ tp_assign(ns_level, pid_ns ? pid_ns->level : 0)
),
TP_printk("")
)
),
TP_printk("")
)
@@
-175,12
+150,12
@@
TRACE_EVENT(lttng_statedump_interrupt,
TP_STRUCT__entry(
__field(unsigned int, irq)
__string(name, chip_name)
TP_STRUCT__entry(
__field(unsigned int, irq)
__string(name, chip_name)
- __string(action, action->name)
+ __string(action, action->name
? : ""
)
),
TP_fast_assign(
tp_assign(irq, irq)
tp_strcpy(name, chip_name)
),
TP_fast_assign(
tp_assign(irq, irq)
tp_strcpy(name, chip_name)
- tp_strcpy(action, action->name)
+ tp_strcpy(action, action->name
? : ""
)
),
TP_printk("")
)
),
TP_printk("")
)
This page took
0.024331 seconds
and
4
git commands to generate.