Lib lttng-ctl data available command support
[lttng-tools.git] / src / common / sessiond-comm / sessiond-comm.h
index 32ce38430af115fbf4303249eaa2684c52654ae3..f60c5d238a364037fa21a75b42ac128910ce3d61 100644 (file)
@@ -87,6 +87,7 @@ enum lttcomm_sessiond_command {
        RELAYD_CLOSE_STREAM,
        LTTNG_SET_FILTER,
        LTTNG_HEALTH_CHECK,
+       LTTNG_DATA_AVAILABLE,
 };
 
 /*
@@ -167,12 +168,12 @@ struct lttcomm_session_msg {
        struct lttng_domain domain;
        union {
                struct {
-                       char channel_name[NAME_MAX];
+                       char channel_name[LTTNG_SYMBOL_NAME_LEN];
                        char name[NAME_MAX];
                } disable;
                /* Event data */
                struct {
-                       char channel_name[NAME_MAX];
+                       char channel_name[LTTNG_SYMBOL_NAME_LEN];
                        struct lttng_event event;
                } enable;
                /* Create channel */
@@ -181,8 +182,8 @@ struct lttcomm_session_msg {
                } channel;
                /* Context */
                struct {
-                       char channel_name[NAME_MAX];
-                       char event_name[NAME_MAX];
+                       char channel_name[LTTNG_SYMBOL_NAME_LEN];
+                       char event_name[LTTNG_SYMBOL_NAME_LEN];
                        struct lttng_event_context ctx;
                } context;
                /* Use by register_consumer */
@@ -191,7 +192,7 @@ struct lttcomm_session_msg {
                } reg;
                /* List */
                struct {
-                       char channel_name[NAME_MAX];
+                       char channel_name[LTTNG_SYMBOL_NAME_LEN];
                } list;
                struct lttng_calibrate calibrate;
                /* Used by the set_consumer_url and used by create_session also call */
@@ -200,15 +201,15 @@ struct lttcomm_session_msg {
                        uint32_t size;
                } uri;
                struct {
-                       char channel_name[NAME_MAX];
-                       char event_name[NAME_MAX];
+                       char channel_name[LTTNG_SYMBOL_NAME_LEN];
+                       char event_name[LTTNG_SYMBOL_NAME_LEN];
                        /* Length of following bytecode */
                        uint32_t bytecode_len;
                } filter;
        } u;
 };
 
-#define LTTNG_FILTER_MAX_LEN   65336
+#define LTTNG_FILTER_MAX_LEN   65536
 
 /*
  * Filter bytecode data. The reloc table is located at the end of the
@@ -216,8 +217,8 @@ struct lttcomm_session_msg {
  * starts at reloc_table_offset.
  */
 struct lttng_filter_bytecode {
-       uint16_t len;   /* len of data */
-       uint16_t reloc_table_offset;
+       uint32_t len;   /* len of data */
+       uint32_t reloc_table_offset;
        char data[0];
 };
 
@@ -255,6 +256,8 @@ struct lttcomm_consumer_msg {
                        uint64_t max_sb_size; /* the subbuffer size for this channel */
                        /* shm_fd and wait_fd are sent as ancillary data */
                        uint64_t mmap_len;
+                       /* nb_init_streams is the number of streams open initially. */
+                       unsigned int nb_init_streams;
                        char name[LTTNG_SYMBOL_NAME_LEN];
                } channel;
                struct {
@@ -270,6 +273,7 @@ struct lttcomm_consumer_msg {
                        int net_index;
                        unsigned int metadata_flag;
                        char name[LTTNG_SYMBOL_NAME_LEN];  /* Name string of the stream */
+                       uint64_t session_id;   /* Tracing session id of the stream */
                } stream;
                struct {
                        int net_index;
@@ -280,6 +284,9 @@ struct lttcomm_consumer_msg {
                struct {
                        uint64_t net_seq_idx;
                } destroy_relayd;
+               struct {
+                       uint64_t session_id;
+               } data_available;
        } u;
 };
 
This page took 0.025342 seconds and 4 git commands to generate.