Signed-off-by: Michael Jeanson <mjean...@efficios.com> --- include/lttng/event.h | 7 +++++++ src/bin/lttng-sessiond/context.c | 21 +++++++++++++++++++++ src/bin/lttng-sessiond/save.c | 21 +++++++++++++++++++++ src/bin/lttng/commands/add_context.c | 14 ++++++++++++++ src/common/config/config-session-abi.h | 7 +++++++ src/common/config/session-config.c | 28 ++++++++++++++++++++++++++++ src/common/lttng-kernel.h | 7 +++++++ 7 files changed, 105 insertions(+)
diff --git a/include/lttng/event.h b/include/lttng/event.h index 16b4d4f..44edd52 100644 --- a/include/lttng/event.h +++ b/include/lttng/event.h @@ -142,6 +142,13 @@ enum lttng_event_context_type { LTTNG_EVENT_CONTEXT_PREEMPTIBLE = 17, LTTNG_EVENT_CONTEXT_NEED_RESCHEDULE = 18, LTTNG_EVENT_CONTEXT_MIGRATABLE = 19, + LTTNG_EVENT_CONTEXT_CGROUP_NS = 20, + LTTNG_EVENT_CONTEXT_IPC_NS = 21, + LTTNG_EVENT_CONTEXT_MNT_NS = 22, + LTTNG_EVENT_CONTEXT_NET_NS = 23, + LTTNG_EVENT_CONTEXT_PID_NS = 24, + LTTNG_EVENT_CONTEXT_USER_NS = 25, + LTTNG_EVENT_CONTEXT_UTS_NS = 26, }; enum lttng_event_field_type { diff --git a/src/bin/lttng-sessiond/context.c b/src/bin/lttng-sessiond/context.c index 3c7c34d..14f2180 100644 --- a/src/bin/lttng-sessiond/context.c +++ b/src/bin/lttng-sessiond/context.c @@ -259,6 +259,27 @@ int context_kernel_add(struct ltt_kernel_session *ksession, case LTTNG_EVENT_CONTEXT_MIGRATABLE: kctx->ctx.ctx = LTTNG_KERNEL_CONTEXT_MIGRATABLE; break; + case LTTNG_EVENT_CONTEXT_CGROUP_NS: + kctx->ctx.ctx = LTTNG_KERNEL_CONTEXT_CGROUP_NS; + break; + case LTTNG_EVENT_CONTEXT_IPC_NS: + kctx->ctx.ctx = LTTNG_KERNEL_CONTEXT_IPC_NS; + break; + case LTTNG_EVENT_CONTEXT_MNT_NS: + kctx->ctx.ctx = LTTNG_KERNEL_CONTEXT_MNT_NS; + break; + case LTTNG_EVENT_CONTEXT_NET_NS: + kctx->ctx.ctx = LTTNG_KERNEL_CONTEXT_NET_NS; + break; + case LTTNG_EVENT_CONTEXT_PID_NS: + kctx->ctx.ctx = LTTNG_KERNEL_CONTEXT_PID_NS; + break; + case LTTNG_EVENT_CONTEXT_USER_NS: + kctx->ctx.ctx = LTTNG_KERNEL_CONTEXT_USER_NS; + break; + case LTTNG_EVENT_CONTEXT_UTS_NS: + kctx->ctx.ctx = LTTNG_KERNEL_CONTEXT_UTS_NS; + break; default: ret = LTTNG_ERR_KERN_CONTEXT_FAIL; goto error; diff --git a/src/bin/lttng-sessiond/save.c b/src/bin/lttng-sessiond/save.c index af01654..3bfeaab 100644 --- a/src/bin/lttng-sessiond/save.c +++ b/src/bin/lttng-sessiond/save.c @@ -285,6 +285,27 @@ const char *get_kernel_context_type_string( case LTTNG_KERNEL_CONTEXT_MIGRATABLE: context_type_string = config_event_context_migratable; break; + case LTTNG_KERNEL_CONTEXT_CGROUP_NS: + context_type_string = config_event_context_cgroup_ns; + break; + case LTTNG_KERNEL_CONTEXT_IPC_NS: + context_type_string = config_event_context_ipc_ns; + break; + case LTTNG_KERNEL_CONTEXT_MNT_NS: + context_type_string = config_event_context_mnt_ns; + break; + case LTTNG_KERNEL_CONTEXT_NET_NS: + context_type_string = config_event_context_net_ns; + break; + case LTTNG_KERNEL_CONTEXT_PID_NS: + context_type_string = config_event_context_pid_ns; + break; + case LTTNG_KERNEL_CONTEXT_USER_NS: + context_type_string = config_event_context_user_ns; + break; + case LTTNG_KERNEL_CONTEXT_UTS_NS: + context_type_string = config_event_context_uts_ns; + break; default: context_type_string = NULL; } diff --git a/src/bin/lttng/commands/add_context.c b/src/bin/lttng/commands/add_context.c index d9121b0..1e9977f 100644 --- a/src/bin/lttng/commands/add_context.c +++ b/src/bin/lttng/commands/add_context.c @@ -84,6 +84,13 @@ enum context_type { CONTEXT_PREEMPTIBLE = 17, CONTEXT_NEED_RESCHEDULE = 18, CONTEXT_MIGRATABLE = 19, + CONTEXT_CGROUP_NS = 20, + CONTEXT_IPC_NS = 21, + CONTEXT_MNT_NS = 22, + CONTEXT_NET_NS = 23, + CONTEXT_PID_NS = 24, + CONTEXT_USER_NS = 25, + CONTEXT_UTS_NS = 26, }; /* @@ -240,6 +247,13 @@ const struct ctx_opts { { "preemptible", CONTEXT_PREEMPTIBLE }, { "need_reschedule", CONTEXT_NEED_RESCHEDULE }, { "migratable", CONTEXT_MIGRATABLE }, + { "cgroup_ns", CONTEXT_CGROUP_NS }, + { "ipc_ns", CONTEXT_IPC_NS }, + { "mnt_ns", CONTEXT_MNT_NS }, + { "net_ns", CONTEXT_NET_NS }, + { "pid_ns", CONTEXT_PID_NS }, + { "user_ns", CONTEXT_USER_NS }, + { "uts_ns", CONTEXT_UTS_NS }, /* Perf options */ diff --git a/src/common/config/config-session-abi.h b/src/common/config/config-session-abi.h index 5f91109..d1c51c0c 100644 --- a/src/common/config/config-session-abi.h +++ b/src/common/config/config-session-abi.h @@ -129,5 +129,12 @@ extern const char * const config_event_context_interruptible; extern const char * const config_event_context_preemptible; extern const char * const config_event_context_need_reschedule; extern const char * const config_event_context_migratable; +extern const char * const config_event_context_cgroup_ns; +extern const char * const config_event_context_ipc_ns; +extern const char * const config_event_context_mnt_ns; +extern const char * const config_event_context_net_ns; +extern const char * const config_event_context_pid_ns; +extern const char * const config_event_context_user_ns; +extern const char * const config_event_context_uts_ns; #endif /* CONFIG_SESSION_INTERNAL_H */ diff --git a/src/common/config/session-config.c b/src/common/config/session-config.c index 783a74a..130a095 100644 --- a/src/common/config/session-config.c +++ b/src/common/config/session-config.c @@ -179,6 +179,13 @@ LTTNG_HIDDEN const char * const config_event_context_interruptible = "INTERRUPTI LTTNG_HIDDEN const char * const config_event_context_preemptible = "PREEMPTIBLE"; LTTNG_HIDDEN const char * const config_event_context_need_reschedule = "NEED_RESCHEDULE"; LTTNG_HIDDEN const char * const config_event_context_migratable = "MIGRATABLE"; +LTTNG_HIDDEN const char * const config_event_context_cgroup_ns = "CGROUP_NS"; +LTTNG_HIDDEN const char * const config_event_context_ipc_ns = "IPC_NS"; +LTTNG_HIDDEN const char * const config_event_context_mnt_ns = "MNT_NS"; +LTTNG_HIDDEN const char * const config_event_context_net_ns = "NET_NS"; +LTTNG_HIDDEN const char * const config_event_context_pid_ns = "PID_NS"; +LTTNG_HIDDEN const char * const config_event_context_user_ns = "USER_NS"; +LTTNG_HIDDEN const char * const config_event_context_uts_ns = "UTS_NS"; /* Deprecated symbols */ const char * const config_element_perf; @@ -1013,6 +1020,27 @@ int get_context_type(xmlChar *context_type) } else if (!strcmp((char *) context_type, config_event_context_migratable)) { ret = LTTNG_EVENT_CONTEXT_MIGRATABLE; + } else if (!strcmp((char *) context_type, + config_event_context_cgroup_ns)) { + ret = LTTNG_EVENT_CONTEXT_CGROUP_NS; + } else if (!strcmp((char *) context_type, + config_event_context_ipc_ns)) { + ret = LTTNG_EVENT_CONTEXT_IPC_NS; + } else if (!strcmp((char *) context_type, + config_event_context_mnt_ns)) { + ret = LTTNG_EVENT_CONTEXT_MNT_NS; + } else if (!strcmp((char *) context_type, + config_event_context_net_ns)) { + ret = LTTNG_EVENT_CONTEXT_NET_NS; + } else if (!strcmp((char *) context_type, + config_event_context_pid_ns)) { + ret = LTTNG_EVENT_CONTEXT_PID_NS; + } else if (!strcmp((char *) context_type, + config_event_context_user_ns)) { + ret = LTTNG_EVENT_CONTEXT_USER_NS; + } else if (!strcmp((char *) context_type, + config_event_context_uts_ns)) { + ret = LTTNG_EVENT_CONTEXT_UTS_NS; } else { goto error; } diff --git a/src/common/lttng-kernel.h b/src/common/lttng-kernel.h index 8d87539..a55baee 100644 --- a/src/common/lttng-kernel.h +++ b/src/common/lttng-kernel.h @@ -58,6 +58,13 @@ enum lttng_kernel_context_type { LTTNG_KERNEL_CONTEXT_PREEMPTIBLE = 13, LTTNG_KERNEL_CONTEXT_NEED_RESCHEDULE = 14, LTTNG_KERNEL_CONTEXT_MIGRATABLE = 15, + LTTNG_KERNEL_CONTEXT_CGROUP_NS = 16, + LTTNG_KERNEL_CONTEXT_IPC_NS = 17, + LTTNG_KERNEL_CONTEXT_MNT_NS = 18, + LTTNG_KERNEL_CONTEXT_NET_NS = 19, + LTTNG_KERNEL_CONTEXT_PID_NS = 20, + LTTNG_KERNEL_CONTEXT_USER_NS = 21, + LTTNG_KERNEL_CONTEXT_UTS_NS = 22, }; /* Perf counter attributes */ -- 2.7.4 _______________________________________________ lttng-dev mailing list lttng-dev@lists.lttng.org https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev