X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcommon%2Fsessiond-comm%2Frelayd.h;h=444c43af0aae454b32ecb8b86aedf33ed681f1b2;hb=d3ecc5503007bc81faa8049fac945f163b6356f3;hp=358123273fb20a757f3da8dbca6ba999921eb532;hpb=234cd6367843a2106a4cb10f8fb99443208516df;p=lttng-tools.git diff --git a/src/common/sessiond-comm/relayd.h b/src/common/sessiond-comm/relayd.h index 358123273..444c43af0 100644 --- a/src/common/sessiond-comm/relayd.h +++ b/src/common/sessiond-comm/relayd.h @@ -94,13 +94,6 @@ struct lttcomm_relayd_generic_reply { uint32_t ret_code; } LTTNG_PACKED; -/* - * Used to update synchronization information. - */ -struct lttcomm_relayd_update_sync_info { - /* TODO: fill the structure. Feature not implemented yet */ -} LTTNG_PACKED; - /* * Version command. */ @@ -159,10 +152,30 @@ struct lttcomm_relayd_index { uint64_t timestamp_end; uint64_t events_discarded; uint64_t stream_id; + /* 2.8+ */ uint64_t stream_instance_id; uint64_t packet_seq_num; } LTTNG_PACKED; +static inline size_t lttcomm_relayd_index_len(uint32_t major, uint32_t minor) +{ + if (major == 1) { + switch (minor) { + case 0: + return offsetof(struct lttcomm_relayd_index, stream_id) + + member_sizeof(struct lttcomm_relayd_index, + stream_id); + case 1: + return offsetof(struct lttcomm_relayd_index, packet_seq_num) + + member_sizeof(struct lttcomm_relayd_index, + packet_seq_num); + default: + abort(); + } + } + abort(); +} + /* * Create session in 2.4 adds additionnal parameters for live reading. */ @@ -173,4 +186,36 @@ struct lttcomm_relayd_create_session_2_4 { uint32_t snapshot; } LTTNG_PACKED; +/* + * Used to ask the relay to reset the metadata trace file (regeneration). + * Send the new version of the metadata (starts at 0). + */ +struct lttcomm_relayd_reset_metadata { + uint64_t stream_id; + uint64_t version; +} LTTNG_PACKED; + +struct lttcomm_relayd_rotate_stream { + uint64_t stream_id; + uint64_t rotate_at_seq_num; + uint64_t new_chunk_id; + /* Includes trailing NULL. */ + uint32_t pathname_length; + /* Must be the last member of this structure. */ + char new_pathname[]; +} LTTNG_PACKED; + +struct lttcomm_relayd_rotate_rename { + uint32_t old_path_length; + uint32_t new_path_length; + /* Concatenation of the old and new paths, separated by \0. */ + char paths[]; +} LTTNG_PACKED; + +struct lttcomm_relayd_mkdir { + /* Includes trailing NULL */ + uint32_t length; + char path[]; +} LTTNG_PACKED; + #endif /* _RELAYD_COMM */