#include <linux/nsproxy.h>
#include <net/net_namespace.h>
#include <lttng/events.h>
+#include <lttng/events-internal.h>
#include <ringbuffer/frontend_types.h>
#include <wrapper/vmalloc.h>
#include <wrapper/namespace.h>
(LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0))
static
-size_t net_ns_get_size(size_t offset)
+size_t net_ns_get_size(void *priv, struct lttng_kernel_probe_ctx *probe_ctx, size_t offset)
{
size_t size = 0;
}
static
-void net_ns_record(struct lttng_kernel_ctx_field *field,
- struct lib_ring_buffer_ctx *ctx,
- struct lttng_channel *chan)
+void net_ns_record(void *priv, struct lttng_kernel_probe_ctx *probe_ctx,
+ struct lttng_kernel_ring_buffer_ctx *ctx,
+ struct lttng_kernel_channel_buffer *chan)
{
unsigned int net_ns_inum = 0;
if (current->nsproxy)
net_ns_inum = current->nsproxy->net_ns->lttng_ns_inum;
- lib_ring_buffer_align_ctx(ctx, lttng_alignof(net_ns_inum));
- chan->ops->event_write(ctx, &net_ns_inum, sizeof(net_ns_inum));
+ chan->ops->event_write(ctx, &net_ns_inum, sizeof(net_ns_inum), lttng_alignof(net_ns_inum));
}
static
-void net_ns_get_value(struct lttng_kernel_ctx_field *field,
- struct lttng_probe_ctx *lttng_probe_ctx,
- union lttng_ctx_value *value)
+void net_ns_get_value(void *priv,
+ struct lttng_kernel_probe_ctx *lttng_probe_ctx,
+ struct lttng_ctx_value *value)
{
unsigned int net_ns_inum = 0;
if (current->nsproxy)
net_ns_inum = current->nsproxy->net_ns->lttng_ns_inum;
- value->s64 = net_ns_inum;
+ value->u.s64 = net_ns_inum;
}
static const struct lttng_kernel_ctx_field *ctx_field = lttng_kernel_static_ctx_field(
lttng_kernel_static_event_field("net_ns",
lttng_kernel_static_type_integer_from_type(unsigned int, __BYTE_ORDER, 10),
- false, false, false),
+ false, false),
net_ns_get_size,
- NULL,
net_ns_record,
net_ns_get_value,
NULL, NULL);