Generalize `lttng_enabler_link_bytecode()` bytecode list
[lttng-modules.git] / src / lttng-events.c
index 85a064fc686cc1d13cd4bf3a9775a36a9820b5e4..d1a0706e0b9793b525e5c66212ac23b9e85d0614 100644 (file)
@@ -36,6 +36,7 @@
 #include <wrapper/types.h>
 #include <lttng/kernel-version.h>
 #include <lttng/events.h>
+#include <lttng/lttng-bytecode.h>
 #include <lttng/tracer.h>
 #include <lttng/event-notifier-notification.h>
 #include <lttng/abi-old.h>
@@ -2031,7 +2032,7 @@ int lttng_event_enabler_ref_events(struct lttng_event_enabler *event_enabler)
                lttng_enabler_link_bytecode(event->desc,
                        lttng_static_ctx,
                        &event->filter_bytecode_runtime_head,
-                       lttng_event_enabler_as_enabler(event_enabler));
+                       &lttng_event_enabler_as_enabler(event_enabler)->filter_bytecode_head);
 
                /* TODO: merge event context. */
        }
@@ -2118,7 +2119,7 @@ int lttng_event_notifier_enabler_ref_event_notifiers(
                 */
                lttng_enabler_link_bytecode(event_notifier->desc,
                        lttng_static_ctx, &event_notifier->filter_bytecode_runtime_head,
-                       lttng_event_notifier_enabler_as_enabler(event_notifier_enabler));
+                       &lttng_event_notifier_enabler_as_enabler(event_notifier_enabler)->filter_bytecode_head);
        }
        return 0;
 }
@@ -2217,7 +2218,7 @@ static
 int lttng_enabler_attach_filter_bytecode(struct lttng_enabler *enabler,
                struct lttng_kernel_filter_bytecode __user *bytecode)
 {
-       struct lttng_filter_bytecode_node *bytecode_node;
+       struct lttng_bytecode_node *bytecode_node;
        uint32_t bytecode_len;
        int ret;
 
@@ -2233,6 +2234,7 @@ int lttng_enabler_attach_filter_bytecode(struct lttng_enabler *enabler,
        if (ret)
                goto error_free;
 
+       bytecode_node->type = LTTNG_BYTECODE_NODE_TYPE_FILTER;
        bytecode_node->enabler = enabler;
        /* Enforce length based on allocated size */
        bytecode_node->bc.len = bytecode_len;
@@ -2282,7 +2284,7 @@ int lttng_event_enabler_attach_context(struct lttng_event_enabler *event_enabler
 static
 void lttng_enabler_destroy(struct lttng_enabler *enabler)
 {
-       struct lttng_filter_bytecode_node *filter_node, *tmp_filter_node;
+       struct lttng_bytecode_node *filter_node, *tmp_filter_node;
 
        /* Destroy filter bytecode */
        list_for_each_entry_safe(filter_node, tmp_filter_node,
@@ -2479,7 +2481,7 @@ void lttng_session_sync_event_enablers(struct lttng_session *session)
                /* Enable filters */
                list_for_each_entry(runtime,
                                &event->filter_bytecode_runtime_head, node)
-                       lttng_filter_sync_state(runtime);
+                       lttng_bytecode_filter_sync_state(runtime);
        }
 }
 
@@ -2562,7 +2564,7 @@ void lttng_event_notifier_group_sync_enablers(struct lttng_event_notifier_group
                /* Enable filters */
                list_for_each_entry(runtime,
                                &event_notifier->filter_bytecode_runtime_head, node)
-                               lttng_filter_sync_state(runtime);
+                       lttng_bytecode_filter_sync_state(runtime);
        }
 }
 
This page took 0.024847 seconds and 4 git commands to generate.