X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng-relayd%2Flive.c;h=8f73cd27c3eb908b30258ce1fe9c78b340b97e84;hb=c7759e6a503ebd197dd6a84de0eeaa52fbd0e81f;hp=6864ff4eca19c717c79098b906d54d66ec6562c5;hpb=a4baae1b0463bc4ce65c2a458c4a941e7fabc594;p=lttng-tools.git diff --git a/src/bin/lttng-relayd/live.c b/src/bin/lttng-relayd/live.c index 6864ff4ec..8f73cd27c 100644 --- a/src/bin/lttng-relayd/live.c +++ b/src/bin/lttng-relayd/live.c @@ -155,7 +155,7 @@ int create_thread_poll_set(struct lttng_poll_event *events, int size) } /* Add quit pipe */ - ret = lttng_poll_add(events, live_thread_quit_pipe[0], LPOLLIN); + ret = lttng_poll_add(events, live_thread_quit_pipe[0], LPOLLIN | LPOLLERR); if (ret < 0) { goto error; } @@ -259,6 +259,8 @@ void *thread_listener(void *data) goto error_poll_add; } + lttng_relay_notify_ready(); + while (1) { health_code_update(); @@ -1120,7 +1122,8 @@ void destroy_viewer_stream(struct relay_viewer_stream *vstream) * we need to remove it because we won't detect a EOF for this * stream. */ - if (ret_ref == 1 && vstream->ctf_trace->metadata_stream) { + if (ret_ref == 1 && vstream->ctf_trace->viewer_metadata_stream) { + delete_viewer_stream(vstream->ctf_trace->viewer_metadata_stream); destroy_viewer_stream(vstream->ctf_trace->viewer_metadata_stream); vstream->ctf_trace->metadata_stream = NULL; DBG("Freeing ctf_trace %" PRIu64, vstream->ctf_trace->id);