X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng-relayd%2Fmain.c;h=adb044f1d3ebd4b6b6d58a035c6e4d9eece706b9;hp=057ac4046c01e67ae05fa938db49e89c9c913718;hb=c0bae11d346fa301d993430a2cf33b3c426e3140;hpb=2160c3c77dd1285327c69cdaf3c589aea7233396 diff --git a/src/bin/lttng-relayd/main.c b/src/bin/lttng-relayd/main.c index 057ac4046..adb044f1d 100644 --- a/src/bin/lttng-relayd/main.c +++ b/src/bin/lttng-relayd/main.c @@ -2146,6 +2146,7 @@ static int relay_process_data(struct relay_connection *conn) uint64_t net_seq_num; uint32_t data_size; struct relay_session *session; + bool new_stream = false; ret = conn->sock->ops->recvmsg(conn->sock, &data_hdr, sizeof(struct lttcomm_relayd_data_hdr), 0); @@ -2269,10 +2270,19 @@ static int relay_process_data(struct relay_connection *conn) } stream->tracefile_size_current += data_size + be32toh(data_hdr.padding_size); + if (stream->prev_seq == -1ULL) { + new_stream = true; + } + stream->prev_seq = net_seq_num; end_stream_unlock: pthread_mutex_unlock(&stream->lock); + if (new_stream) { + pthread_mutex_lock(&session->lock); + uatomic_set(&session->new_streams, 1); + pthread_mutex_unlock(&session->lock); + } end_stream_put: stream_put(stream); end: