X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;ds=sidebyside;f=src%2Fcommon%2Fkernel-consumer%2Fkernel-consumer.c;h=74c6de399af9f260264eac8a01894f4a1487c599;hb=fc181d72878019621cdf417659beefacebb90c68;hp=4e93bee915463bccba902d646f72f2fdd1f20f87;hpb=7318a78ff9f5695669fe7241319a923bb03c1ff8;p=lttng-tools.git diff --git a/src/common/kernel-consumer/kernel-consumer.c b/src/common/kernel-consumer/kernel-consumer.c index 4e93bee91..74c6de399 100644 --- a/src/common/kernel-consumer/kernel-consumer.c +++ b/src/common/kernel-consumer/kernel-consumer.c @@ -237,7 +237,7 @@ static int lttng_kconsumer_snapshot_channel( produced_pos, nb_packets_per_stream, stream->max_sb_size); - while (consumed_pos < produced_pos) { + while ((long) (consumed_pos - produced_pos) < 0) { ssize_t read_len; unsigned long len, padded_len; @@ -1260,6 +1260,19 @@ int lttng_kconsumer_recv_cmd(struct lttng_consumer_local_data *ctx, } break; } + case LTTNG_CONSUMER_INIT: + { + ret_code = lttng_consumer_init_command(ctx, + msg.u.init.sessiond_uuid); + + health_code_update(); + ret = consumer_send_status_msg(sock, ret_code); + if (ret < 0) { + /* Somehow, the session daemon is not responding anymore. */ + goto end_nosignal; + } + break; + } default: goto end_nosignal; }