From e6188a59e7fe1d6b6d0ffecae463762626c07f4d Mon Sep 17 00:00:00 2001 From: Julien Desfossez Date: Fri, 14 Feb 2014 14:25:26 -0500 Subject: [PATCH] Fix: race with index file creation Only the data thread should create the index file since it is responsible of filling the FD field of the index struct in memory. When the control thread is ready to write the index, the FD is already set. Signed-off-by: Julien Desfossez Signed-off-by: David Goulet --- src/bin/lttng-relayd/main.c | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/src/bin/lttng-relayd/main.c b/src/bin/lttng-relayd/main.c index 1cbd12a65..1ced13901 100644 --- a/src/bin/lttng-relayd/main.c +++ b/src/bin/lttng-relayd/main.c @@ -1830,17 +1830,6 @@ int relay_recv_index(struct lttcomm_relayd_hdr *recv_hdr, /* Do we have a writable ready index to write on disk. */ if (wr_index) { - /* Starting at 2.4, create the index file if none available. */ - if (conn->minor >= 4 && stream->index_fd < 0) { - ret = index_create_file(stream->path_name, stream->channel_name, - relayd_uid, relayd_gid, stream->tracefile_size, - stream->tracefile_count_current); - if (ret < 0) { - goto end_rcu_unlock; - } - stream->index_fd = ret; - } - ret = relay_index_write(wr_index->fd, wr_index); if (ret < 0) { goto end_rcu_unlock; -- 2.34.1