Save filter expressions as part of agent events
[lttng-tools.git] / src / bin / lttng-sessiond / event.c
index 85b41bed001f2ae5bfbe9f661ece22ea54d21e9d..2244503c16d4287db0988adb40595f6ce20049bd 100644 (file)
@@ -208,9 +208,9 @@ int event_ust_enable_tracepoint(struct ltt_ust_session *usess,
 
        uevent = trace_ust_find_event(uchan->events, event->name, filter,
                        event->loglevel, exclusion);
-       if (uevent == NULL) {
+       if (!uevent) {
                uevent = trace_ust_create_event(event, filter_expression,
-                       filter, exclusion);
+                               filter, exclusion, internal_event);
                /* We have passed ownership */
                filter_expression = NULL;
                filter = NULL;
@@ -359,7 +359,8 @@ error:
  */
 int event_agent_enable_all(struct ltt_ust_session *usess,
                struct agent *agt, struct lttng_event *event,
-               struct lttng_filter_bytecode *filter)
+               struct lttng_filter_bytecode *filter,
+               char *filter_expression)
 {
        int ret;
        struct agent_event *aevent;
@@ -370,7 +371,7 @@ int event_agent_enable_all(struct ltt_ust_session *usess,
        DBG("Event agent enabling ALL events for session %" PRIu64, usess->id);
 
        /* Enable event on agent application through TCP socket. */
-       ret = event_agent_enable(usess, agt, event, filter);
+       ret = event_agent_enable(usess, agt, event, filter, filter_expression);
        if (ret != LTTNG_OK) {
                goto error;
        }
@@ -396,7 +397,8 @@ error:
  */
 int event_agent_enable(struct ltt_ust_session *usess,
                struct agent *agt, struct lttng_event *event,
-               struct lttng_filter_bytecode *filter)
+               struct lttng_filter_bytecode *filter,
+               char *filter_expression)
 {
        int ret, created = 0;
        struct agent_event *aevent;
This page took 0.024967 seconds and 4 git commands to generate.