same question about not using lttng_pipe_read() here. Thanks,
Mathieu * David Goulet ([email protected]) wrote: > Signed-off-by: David Goulet <[email protected]> > --- > src/common/kernel-consumer/kernel-consumer.c | 15 +++++++-------- > src/common/ust-consumer/ust-consumer.c | 16 ++++++++-------- > 2 files changed, 15 insertions(+), 16 deletions(-) > > diff --git a/src/common/kernel-consumer/kernel-consumer.c > b/src/common/kernel-consumer/kernel-consumer.c > index f23fc9c..d985014 100644 > --- a/src/common/kernel-consumer/kernel-consumer.c > +++ b/src/common/kernel-consumer/kernel-consumer.c > @@ -168,7 +168,8 @@ int lttng_kconsumer_recv_cmd(struct > lttng_consumer_local_data *ctx, > } > case LTTNG_CONSUMER_ADD_STREAM: > { > - int fd, stream_pipe; > + int fd; > + struct lttng_pipe *stream_pipe; > struct consumer_relayd_sock_pair *relayd = NULL; > struct lttng_consumer_stream *new_stream; > struct lttng_consumer_channel *channel; > @@ -288,18 +289,16 @@ int lttng_kconsumer_recv_cmd(struct > lttng_consumer_local_data *ctx, > > /* Get the right pipe where the stream will be sent. */ > if (new_stream->metadata_flag) { > - stream_pipe = > lttng_pipe_get_writefd(ctx->consumer_metadata_pipe); > + stream_pipe = ctx->consumer_metadata_pipe; > } else { > - stream_pipe = > lttng_pipe_get_writefd(ctx->consumer_data_pipe); > + stream_pipe = ctx->consumer_data_pipe; > } > > - do { > - ret = write(stream_pipe, &new_stream, > sizeof(new_stream)); > - } while (ret < 0 && errno == EINTR); > + ret = lttng_pipe_write(stream_pipe, &new_stream, > sizeof(new_stream)); > if (ret < 0) { > - PERROR("Consumer write %s stream to pipe %d", > + ERR("Consumer write %s stream to pipe %d", > new_stream->metadata_flag ? "metadata" > : "data", > - stream_pipe); > + lttng_pipe_get_writefd(stream_pipe)); > consumer_del_stream(new_stream, NULL); > goto end_nosignal; > } > diff --git a/src/common/ust-consumer/ust-consumer.c > b/src/common/ust-consumer/ust-consumer.c > index a81e9d4..fa46634 100644 > --- a/src/common/ust-consumer/ust-consumer.c > +++ b/src/common/ust-consumer/ust-consumer.c > @@ -185,21 +185,21 @@ error: > static int send_stream_to_thread(struct lttng_consumer_stream *stream, > struct lttng_consumer_local_data *ctx) > { > - int ret, stream_pipe; > + int ret; > + struct lttng_pipe *stream_pipe; > > /* Get the right pipe where the stream will be sent. */ > if (stream->metadata_flag) { > - stream_pipe = > lttng_pipe_get_writefd(ctx->consumer_metadata_pipe); > + stream_pipe = ctx->consumer_metadata_pipe; > } else { > - stream_pipe = lttng_pipe_get_writefd(ctx->consumer_data_pipe); > + stream_pipe = ctx->consumer_data_pipe; > } > > - do { > - ret = write(stream_pipe, &stream, sizeof(stream)); > - } while (ret < 0 && errno == EINTR); > + ret = lttng_pipe_write(stream_pipe, &stream, sizeof(stream)); > if (ret < 0) { > - PERROR("Consumer write %s stream to pipe %d", > - stream->metadata_flag ? "metadata" : "data", > stream_pipe); > + ERR("Consumer write %s stream to pipe %d", > + stream->metadata_flag ? "metadata" : "data", > + lttng_pipe_get_writefd(stream_pipe)); > } > > return ret; > -- > 1.7.10.4 > > > _______________________________________________ > lttng-dev mailing list > [email protected] > http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com _______________________________________________ lttng-dev mailing list [email protected] http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
