X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=src%2Fbin%2Flttng-relayd%2Fmain.c;h=e3c070f8ba0330c2c297983456b385be19ad0513;hb=3765c8cc40733ddde776d57c1ece30f2b05beea4;hp=a57b1d4b063e2d02f200fcd07f860276b1d6ae64;hpb=e2acc8d25bc0073554a2f3e742e070b7034ec1d0;p=lttng-tools.git diff --git a/src/bin/lttng-relayd/main.c b/src/bin/lttng-relayd/main.c index a57b1d4b0..e3c070f8b 100644 --- a/src/bin/lttng-relayd/main.c +++ b/src/bin/lttng-relayd/main.c @@ -1722,7 +1722,8 @@ int try_rotate_stream(struct relay_stream *stream) goto end; } - if (stream->prev_seq < stream->rotate_at_seq_num) { + if (stream->prev_seq < stream->rotate_at_seq_num || + stream->prev_seq == -1ULL) { DBG("Stream %" PRIu64 " no yet ready for rotation", stream->stream_handle); goto end; @@ -2803,10 +2804,10 @@ int relay_rotate_pending(struct lttcomm_relayd_hdr *recv_hdr, { struct relay_session *session = conn->session; struct lttcomm_relayd_rotate_pending msg; - struct lttcomm_relayd_generic_reply reply; + struct lttcomm_relayd_rotate_pending_reply reply; struct lttng_ht_iter iter; struct relay_stream *stream; - int ret; + int ret = 0; ssize_t network_ret; uint64_t chunk_id; bool rotate_pending = false; @@ -2883,7 +2884,8 @@ int relay_rotate_pending(struct lttcomm_relayd_hdr *recv_hdr, send_reply: rcu_read_unlock(); memset(&reply, 0, sizeof(reply)); - reply.ret_code = htobe32(rotate_pending ? 1 : 0); + reply.generic.ret_code = htobe32((uint32_t) LTTNG_OK); + reply.is_pending = (uint8_t) !!rotate_pending; network_ret = conn->sock->ops->sendmsg(conn->sock, &reply, sizeof(reply), 0); if (network_ret < (ssize_t) sizeof(reply)) {