Remove unneeded RCU lock
[lttng-tools.git] / src / bin / lttng-sessiond / agent.c
index 43acea42a85ca4f4b1c00c8e2a5a409904cd1582..ca2d4c872931632f4e5d46cb9c6b17b6b3d0d8ed 100644 (file)
@@ -273,6 +273,7 @@ static ssize_t list_events(struct agent_app *app, struct lttng_event **events)
        int ret, i, len = 0, offset = 0;
        uint32_t nb_event;
        size_t data_size;
+       uint32_t reply_ret_code;
        struct lttng_event *tmp_events = NULL;
        struct lttcomm_agent_list_reply *reply = NULL;
        struct lttcomm_agent_list_reply_hdr reply_hdr;
@@ -295,14 +296,14 @@ static ssize_t list_events(struct agent_app *app, struct lttng_event **events)
                goto error_io;
        }
 
-       switch (be32toh(reply_hdr.ret_code)) {
+       reply_ret_code = be32toh(reply_hdr.ret_code);
+       log_reply_code(reply_ret_code);
+       switch (reply_ret_code) {
        case AGENT_RET_CODE_SUCCESS:
                data_size = be32toh(reply_hdr.data_size) + sizeof(*reply);
                break;
        default:
-               ERR("Agent returned an unknown code: %" PRIu32,
-                               be32toh(reply_hdr.ret_code));
-               ret = LTTNG_ERR_FATAL;
+               ret = LTTNG_ERR_UNK;
                goto error;
        }
 
@@ -358,6 +359,7 @@ static int enable_event(struct agent_app *app, struct agent_event *event)
 {
        int ret;
        uint64_t data_size;
+       uint32_t reply_ret_code;
        struct lttcomm_agent_enable msg;
        struct lttcomm_agent_generic_reply reply;
 
@@ -389,16 +391,16 @@ static int enable_event(struct agent_app *app, struct agent_event *event)
                goto error_io;
        }
 
-       switch (be32toh(reply.ret_code)) {
+       reply_ret_code = be32toh(reply.ret_code);
+       log_reply_code(reply_ret_code);
+       switch (reply_ret_code) {
        case AGENT_RET_CODE_SUCCESS:
                break;
        case AGENT_RET_CODE_UNKNOWN_NAME:
                ret = LTTNG_ERR_UST_EVENT_NOT_FOUND;
                goto error;
        default:
-               ERR("Agent returned an unknown code: %" PRIu32,
-                               be32toh(reply.ret_code));
-               ret = LTTNG_ERR_FATAL;
+               ret = LTTNG_ERR_UNK;
                goto error;
        }
 
@@ -420,6 +422,7 @@ static int disable_event(struct agent_app *app, struct agent_event *event)
 {
        int ret;
        uint64_t data_size;
+       uint32_t reply_ret_code;
        struct lttcomm_agent_disable msg;
        struct lttcomm_agent_generic_reply reply;
 
@@ -449,16 +452,16 @@ static int disable_event(struct agent_app *app, struct agent_event *event)
                goto error_io;
        }
 
-       switch (be32toh(reply.ret_code)) {
+       reply_ret_code = be32toh(reply.ret_code);
+       log_reply_code(reply_ret_code);
+       switch (reply_ret_code) {
        case AGENT_RET_CODE_SUCCESS:
                break;
        case AGENT_RET_CODE_UNKNOWN_NAME:
                ret = LTTNG_ERR_UST_EVENT_NOT_FOUND;
                goto error;
        default:
-               ERR("Agent returned an unknown code: %" PRIu32,
-                               be32toh(reply.ret_code));
-               ret = LTTNG_ERR_FATAL;
+               ret = LTTNG_ERR_UNK;
                goto error;
        }
 
@@ -713,10 +716,7 @@ void agent_add_app(struct agent_app *app)
        assert(app);
 
        DBG3("Agent adding app sock: %d and pid: %d to ht", app->sock->fd, app->pid);
-
-       rcu_read_lock();
        lttng_ht_add_unique_ulong(agent_apps_ht_by_sock, &app->node);
-       rcu_read_unlock();
 }
 
 /*
@@ -789,9 +789,7 @@ void agent_add(struct agent *agt, struct lttng_ht *ht)
 
        DBG3("Agent adding from domain %d", agt->domain);
 
-       rcu_read_lock();
        lttng_ht_add_unique_u64(ht, &agt->node);
-       rcu_read_unlock();
 }
 
 /*
@@ -955,6 +953,7 @@ void agent_destroy_event(struct agent_event *event)
        assert(event);
 
        free(event->filter);
+       free(event->filter_expression);
        free(event);
 }
 
This page took 0.024572 seconds and 4 git commands to generate.