X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fcommon%2Fsessiond-comm%2Fsessiond-comm.h;h=41f96d8a4288c355d60df2655bbd04b135102f79;hp=32ce38430af115fbf4303249eaa2684c52654ae3;hb=178191b3899f114001f000c2e7f46909969f9c6f;hpb=f73fabfda365d22e7dd180fb1614e37c446fbd9e diff --git a/src/common/sessiond-comm/sessiond-comm.h b/src/common/sessiond-comm/sessiond-comm.h index 32ce38430..41f96d8a4 100644 --- a/src/common/sessiond-comm/sessiond-comm.h +++ b/src/common/sessiond-comm/sessiond-comm.h @@ -30,6 +30,7 @@ #include #include #include +#include #include #include @@ -85,8 +86,11 @@ enum lttcomm_sessiond_command { RELAYD_VERSION, RELAYD_SEND_METADATA, RELAYD_CLOSE_STREAM, + RELAYD_DATA_PENDING, + RELAYD_QUIESCENT_CONTROL, LTTNG_SET_FILTER, LTTNG_HEALTH_CHECK, + LTTNG_DATA_PENDING, }; /* @@ -167,12 +171,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 +185,7 @@ struct lttcomm_session_msg { } channel; /* Context */ struct { - char channel_name[NAME_MAX]; - char event_name[NAME_MAX]; + char channel_name[LTTNG_SYMBOL_NAME_LEN]; struct lttng_event_context ctx; } context; /* Use by register_consumer */ @@ -191,7 +194,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 +203,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]; + struct lttng_event event; /* 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 +219,9 @@ 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; + uint64_t seqnum; char data[0]; }; @@ -255,6 +259,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 { @@ -269,7 +275,8 @@ struct lttcomm_consumer_msg { char path_name[PATH_MAX]; int net_index; unsigned int metadata_flag; - char name[LTTNG_SYMBOL_NAME_LEN]; /* Name string of the stream */ + char name[DEFAULT_STREAM_NAME_LEN]; /* Name string of the stream */ + uint64_t session_id; /* Tracing session id of the stream */ } stream; struct { int net_index; @@ -280,6 +287,9 @@ struct lttcomm_consumer_msg { struct { uint64_t net_seq_idx; } destroy_relayd; + struct { + uint64_t session_id; + } data_pending; } u; };