X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fkernel-consumer.c;h=bbf50d57b594544f62ffb26f9d7c8a3f23f5a832;hp=f589c2a0b7cac77ae256feabd3c562abeed3c3a1;hb=97b6ffd01e16cbb0871722ee605bf02794031859;hpb=d386b2341d96bbeeb1f89071614506c0ddbb9bcc diff --git a/src/bin/lttng-sessiond/kernel-consumer.c b/src/bin/lttng-sessiond/kernel-consumer.c index f589c2a0b..bbf50d57b 100644 --- a/src/bin/lttng-sessiond/kernel-consumer.c +++ b/src/bin/lttng-sessiond/kernel-consumer.c @@ -32,22 +32,24 @@ * Send all stream fds of kernel channel to the consumer. */ int kernel_consumer_send_channel_stream(struct consumer_data *consumer_data, - int sock, struct ltt_kernel_channel *channel, uid_t uid, gid_t gid) + struct ltt_kernel_channel *channel, uid_t uid, gid_t gid) { - int ret, count = 0; + int ret, count = 0, consumer_sock; struct ltt_kernel_stream *stream; struct lttcomm_consumer_msg lkm; DBG("Sending streams of channel %s to kernel consumer", channel->channel->name); + consumer_sock = consumer_data->cmd_sock; + /* Send channel */ lkm.cmd_type = LTTNG_CONSUMER_ADD_CHANNEL; lkm.u.channel.channel_key = channel->fd; lkm.u.channel.max_sb_size = channel->channel->attr.subbuf_size; lkm.u.channel.mmap_len = 0; /* for kernel */ DBG("Sending channel %d to consumer", lkm.u.channel.channel_key); - ret = lttcomm_send_unix_sock(sock, &lkm, sizeof(lkm)); + ret = lttcomm_send_unix_sock(consumer_sock, &lkm, sizeof(lkm)); if (ret < 0) { PERROR("send consumer channel"); goto error; @@ -73,12 +75,12 @@ int kernel_consumer_send_channel_stream(struct consumer_data *consumer_data, count++; DBG("Sending stream %d to consumer", lkm.u.stream.stream_key); - ret = lttcomm_send_unix_sock(sock, &lkm, sizeof(lkm)); + ret = lttcomm_send_unix_sock(consumer_sock, &lkm, sizeof(lkm)); if (ret < 0) { PERROR("send consumer stream"); goto error; } - ret = lttcomm_send_fds_unix_sock(sock, &stream->fd, 1); + ret = lttcomm_send_fds_unix_sock(consumer_sock, &stream->fd, 1); if (ret < 0) { PERROR("send consumer stream ancillary data"); goto error; @@ -151,7 +153,7 @@ int kernel_consumer_send_session(struct consumer_data *consumer_data, } cds_list_for_each_entry(chan, &session->channel_list.head, list) { - ret = kernel_consumer_send_channel_stream(consumer_data, sock, chan, + ret = kernel_consumer_send_channel_stream(consumer_data, chan, session->uid, session->gid); if (ret < 0) { goto error;