Fix data pending for inflight streaming
[lttng-tools.git] / src / common / consumer.h
index a476dd5bf84fa5617df92ba603557e35b374f0ee..7f0d0cc2134596ecf9a4debe2303add43579016c 100644 (file)
@@ -186,6 +186,10 @@ struct consumer_relayd_sock_pair {
         */
        struct lttcomm_sock data_sock;
        struct lttng_ht_node_ulong node;
+
+       /* Session id on both sides for the sockets. */
+       uint64_t relayd_session_id;
+       uint64_t sessiond_session_id;
 };
 
 /*
@@ -296,6 +300,15 @@ struct lttng_consumer_global_data {
        struct lttng_ht *stream_list_ht;
 };
 
+/*
+ * Session id mapping structure storred in relayd_session_id_ht.
+ */
+struct consumer_relayd_session_id {
+       uint64_t sessiond_id;
+       uint64_t relayd_id;
+       struct lttng_ht_node_ulong node;
+};
+
 /*
  * Init consumer data structures.
  */
@@ -412,7 +425,8 @@ ssize_t lttng_consumer_read_subbuffer(struct lttng_consumer_stream *stream,
 int lttng_consumer_on_recv_stream(struct lttng_consumer_stream *stream);
 int consumer_add_relayd_socket(int net_seq_idx, int sock_type,
                struct lttng_consumer_local_data *ctx, int sock,
-               struct pollfd *consumer_sockpoll, struct lttcomm_sock *relayd_sock);
+               struct pollfd *consumer_sockpoll, struct lttcomm_sock *relayd_sock,
+               unsigned int sessiond_id);
 void consumer_flag_relayd_for_destroy(
                struct consumer_relayd_sock_pair *relayd);
 int consumer_data_pending(uint64_t id);
This page took 0.023523 seconds and 4 git commands to generate.