- lib_ring_buffer_ctx_init(&ctx, __chan->chan, __event, __event_len, \
- __event_align, -1); \
- __ret = __chan->ops->event_reserve(&ctx, __event->id); \
+ lib_ring_buffer_ctx_init(&__ctx, __chan->chan, __event, __event_len, \
+ __event_align, -1, __chan->handle); \
+ __ret = __chan->ops->event_reserve(&__ctx, __event->id); \
+ if (__ret < 0) \
+ return; \
+ _fields \
+ __chan->ops->event_commit(&__ctx); \
+}
+
+#undef TRACEPOINT_EVENT_CLASS_NOARGS
+#define TRACEPOINT_EVENT_CLASS_NOARGS(_name, _fields) \
+static void __event_probe__##_name(void *__data) \
+{ \
+ struct ltt_event *__event = __data; \
+ struct ltt_channel *__chan = __event->chan; \
+ struct lttng_ust_lib_ring_buffer_ctx __ctx; \
+ size_t __event_len, __event_align; \
+ int __ret; \
+ \
+ if (caa_unlikely(!CMM_ACCESS_ONCE(__chan->session->active))) \
+ return; \
+ if (caa_unlikely(!CMM_ACCESS_ONCE(__chan->enabled))) \
+ return; \
+ if (caa_unlikely(!CMM_ACCESS_ONCE(__event->enabled))) \
+ return; \
+ __event_len = 0; \
+ __event_align = 1; \
+ lib_ring_buffer_ctx_init(&__ctx, __chan->chan, __event, __event_len, \
+ __event_align, -1, __chan->handle); \
+ __ret = __chan->ops->event_reserve(&__ctx, __event->id); \