X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng-relayd%2Fconnection.h;h=70fe4ba3da19c9a5f534911ac70b95abe610cd76;hb=8bdee6e2bac74a577147046126628ff3b1b34930;hp=6fb8913bf4dc53756fc8e68a872b394f69c24efc;hpb=58eb9381cd933f0644e6a5b89750dbd6d9b14570;p=lttng-tools.git diff --git a/src/bin/lttng-relayd/connection.h b/src/bin/lttng-relayd/connection.h index 6fb8913bf..70fe4ba3d 100644 --- a/src/bin/lttng-relayd/connection.h +++ b/src/bin/lttng-relayd/connection.h @@ -23,6 +23,7 @@ #include #include #include +#include #include #include @@ -44,7 +45,8 @@ enum connection_type { struct relay_connection { struct lttcomm_sock *sock; struct relay_session *session; - struct cds_wfq_node qnode; + struct relay_viewer_session *viewer_session; + struct cds_wfcq_node qnode; struct lttng_ht_node_ulong sock_n; struct rcu_head rcu_node; enum connection_type type; @@ -52,6 +54,13 @@ struct relay_connection { uint32_t major; uint32_t minor; uint64_t session_id; + + /* + * This contains streams that are received on that connection. It's used to + * store them until we get the streams sent command where they are removed + * and flagged ready for the viewer. This is ONLY used by the control + * thread thus any action on it should happen in that thread. + */ struct cds_list_head recv_head; unsigned int version_check_done:1;