X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=src%2Flttng-context-sgid.c;h=82c905077047ec4ff00f05e1fa8c485df955fb94;hb=033520bec36ca3d3d46737141600dfed73760ab5;hp=bffe9308226d8453da92b8d21bad91230335d5b2;hpb=f7d06400be7d046205c20277a03f3f31bf5b1703;p=lttng-modules.git diff --git a/src/lttng-context-sgid.c b/src/lttng-context-sgid.c index bffe9308..82c90507 100644 --- a/src/lttng-context-sgid.c +++ b/src/lttng-context-sgid.c @@ -11,12 +11,13 @@ #include #include +#include + #include #include #include #include #include -#include static size_t sgid_get_size(void *priv, struct lttng_kernel_probe_ctx *probe_ctx, size_t offset) @@ -35,9 +36,8 @@ void sgid_record(void *priv, struct lttng_kernel_probe_ctx *probe_ctx, { gid_t sgid; - sgid = lttng_current_sgid(); - lib_ring_buffer_align_ctx(ctx, lttng_alignof(sgid)); - chan->ops->event_write(ctx, &sgid, sizeof(sgid)); + sgid = from_kgid_munged(&init_user_ns, current_sgid()); + chan->ops->event_write(ctx, &sgid, sizeof(sgid), lttng_alignof(sgid)); } static @@ -45,13 +45,13 @@ void sgid_get_value(void *priv, struct lttng_kernel_probe_ctx *lttng_probe_ctx, struct lttng_ctx_value *value) { - value->u.s64 = lttng_current_sgid(); + value->u.s64 = from_kgid_munged(&init_user_ns, current_sgid()); } static const struct lttng_kernel_ctx_field *ctx_field = lttng_kernel_static_ctx_field( lttng_kernel_static_event_field("sgid", lttng_kernel_static_type_integer_from_type(gid_t, __BYTE_ORDER, 10), - false, false, false), + false, false), sgid_get_size, sgid_record, sgid_get_value,