Fix: Java application context: pass application context argument to callbacks
[lttng-ust.git] / src / lib / lttng-ust / lttng-events.c
index 8596b7a088025c817bf3e0a177fa6d1ba5db8955..f8170f556210dba2900f8ae4f761dce118b362e3 100644 (file)
@@ -270,8 +270,8 @@ void register_event(struct lttng_ust_event_common *event)
        desc = event->priv->desc;
        ret = lttng_ust_tp_probe_register_queue_release(desc->probe_desc->provider_name,
                        desc->event_name,
-                       desc->probe_callback,
-                       event, desc->signature);
+                       desc->tp_class->probe_callback,
+                       event, desc->tp_class->signature);
        WARN_ON_ONCE(ret);
        if (!ret)
                event->priv->registered = 1;
@@ -287,7 +287,7 @@ void unregister_event(struct lttng_ust_event_common *event)
        desc = event->priv->desc;
        ret = lttng_ust_tp_probe_unregister_queue_release(desc->probe_desc->provider_name,
                        desc->event_name,
-                       desc->probe_callback,
+                       desc->tp_class->probe_callback,
                        event);
        WARN_ON_ONCE(ret);
        if (!ret)
@@ -729,7 +729,7 @@ int lttng_event_recorder_create(const struct lttng_ust_event_desc *desc,
                goto socket_error;
        }
 
-       ret = lttng_create_all_event_enums(desc->nr_fields, desc->fields,
+       ret = lttng_create_all_event_enums(desc->tp_class->nr_fields, desc->tp_class->fields,
                        session);
        if (ret < 0) {
                DBG("Error (%d) adding enum to session", ret);
@@ -793,9 +793,9 @@ int lttng_event_recorder_create(const struct lttng_ust_event_desc *desc,
                chan->priv->parent.objd,
                name,
                loglevel,
-               desc->signature,
-               desc->nr_fields,
-               desc->fields,
+               desc->tp_class->signature,
+               desc->tp_class->nr_fields,
+               desc->tp_class->fields,
                uri,
                &event_recorder->priv->id);
        if (ret < 0) {
@@ -1173,12 +1173,12 @@ void _event_enum_destroy(struct lttng_ust_event_common *event)
                unsigned int i;
 
                /* Destroy enums of the current event. */
-               for (i = 0; i < event_recorder->parent->priv->desc->nr_fields; i++) {
+               for (i = 0; i < event_recorder->parent->priv->desc->tp_class->nr_fields; i++) {
                        const struct lttng_ust_enum_desc *enum_desc;
                        const struct lttng_ust_event_field *field;
                        struct lttng_enum *curr_enum;
 
-                       field = event_recorder->parent->priv->desc->fields[i];
+                       field = event_recorder->parent->priv->desc->tp_class->fields[i];
                        switch (field->type->type) {
                        case lttng_ust_type_enum:
                                enum_desc = lttng_ust_get_type_enum(field->type)->desc;
@@ -2002,8 +2002,7 @@ void lttng_ust_context_set_session_provider(const char *name,
                        struct lttng_ust_ring_buffer_ctx *ctx,
                        struct lttng_ust_channel_buffer *chan),
                void (*get_value)(void *priv, struct lttng_ust_probe_ctx *probe_ctx,
-                       struct lttng_ust_ctx_value *value),
-               void *priv)
+                       struct lttng_ust_ctx_value *value))
 {
        struct lttng_ust_session_private *session_priv;
 
@@ -2013,18 +2012,18 @@ void lttng_ust_context_set_session_provider(const char *name,
                int ret;
 
                ret = lttng_ust_context_set_provider_rcu(&session_priv->ctx,
-                               name, get_size, record, get_value, priv);
+                               name, get_size, record, get_value);
                if (ret)
                        abort();
                cds_list_for_each_entry(chan, &session_priv->chan_head, node) {
                        ret = lttng_ust_context_set_provider_rcu(&chan->ctx,
-                                       name, get_size, record, get_value, priv);
+                                       name, get_size, record, get_value);
                        if (ret)
                                abort();
                }
                cds_list_for_each_entry(event_recorder_priv, &session_priv->events_head, node) {
                        ret = lttng_ust_context_set_provider_rcu(&event_recorder_priv->ctx,
-                                       name, get_size, record, get_value, priv);
+                                       name, get_size, record, get_value);
                        if (ret)
                                abort();
                }
@@ -2045,8 +2044,7 @@ void lttng_ust_context_set_event_notifier_group_provider(const char *name,
                        struct lttng_ust_ring_buffer_ctx *ctx,
                        struct lttng_ust_channel_buffer *chan),
                void (*get_value)(void *priv, struct lttng_ust_probe_ctx *probe_ctx,
-                       struct lttng_ust_ctx_value *value),
-               void *priv)
+                       struct lttng_ust_ctx_value *value))
 {
        struct lttng_event_notifier_group *event_notifier_group;
 
@@ -2055,7 +2053,7 @@ void lttng_ust_context_set_event_notifier_group_provider(const char *name,
 
                ret = lttng_ust_context_set_provider_rcu(
                                &event_notifier_group->ctx,
-                               name, get_size, record, get_value, priv);
+                               name, get_size, record, get_value);
                if (ret)
                        abort();
        }
This page took 0.030367 seconds and 4 git commands to generate.